判空用StringUtils.isBlank还是StringUtils.isEmpty?

共 1032字,需浏览 3分钟

 ·

2020-07-27 17:45


本文公众号来源:Java旅途
作者:Java旅途
本文已收录至我的GitHub

在我们日常开发中,判空应该是最常用的一个操作了。因此项目中总是少不了依赖commons-lang3包。这个包为我们提供了两个判空的方法,分别是StringUtils.isEmpty(CharSequence cs)和StringUtils.isBlank(CharSequence cs)。我们分别来看看这两个方法有什么区别。

一、StringUtils.isEmpty

isEmpty的源码如下:

这个方法判断的是字符串是否为null或者其长度是否为零。

「测试效果」

二、StringUtils.isBlank

isBlank的源码如下:

length(cs)的方法如下

这个方法除了判断字符串是否为null和长度是否为零,还判断了是否为空格,如果是空格也返回true。

「测试效果」

三、总结

  • isEmpty:如果是null或者“”则返回true。
  • isBlank:如果是null或者“”或者空格或者制表符则返回true。「isBlank判空更加准确」

四、扩展

  1. 在实际开发中,除了isBlank判空的几种情况之外,其实“null”字符串我们也会当作空字符串处理。

  2. 我们需要判断几个字段同时不能为空,如果还用isBlank就显得有点累赘了。我们可以使用String的可变参数提供如下工具类。

这个工具类的优点很明显,一方面判断了字符串“null”,另一方面对参数个数无限制,只要有一个参数是空则返回true。

各类知识点总结

下面的文章都有对应的原创精美PDF,在持续更新中,可以来找我催更~

扫码或者微信搜Java3y 免费领取原创思维导图、精美PDF。在公众号回复「888」领取,PDF内容纯手打有任何不懂欢迎来问我。


原创电子书

原创思维导图


我是三歪,一个想要变强的男人,感谢大家的点赞收藏和转发,下期见。
浏览 88
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报