加入收藏 | 设为首页 | 会员中心 | 我要投稿 财气旺网 - 财气网 (https://www.caiqiwang.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 编程要点 > 语言 > 正文

isEmpty和isBlank的 差异

发布时间:2022-12-08 11:21:32 所属栏目:语言 来源:
导读:  我们在对字符串进行操作的时候,需要经常判断该字符串是否为空。如果没有借助任何工具,我们一般是这样判断的:

  if (null != source && !"".equals(source)) {

   System.out.println("not e

  我们在对字符串进行操作的时候,需要经常判断该字符串是否为空。如果没有借助任何工具,我们一般是这样判断的:
 
  if (null != source && !"".equals(source)) {
 
      System.out.println("not empty");
 
  }
 
  但是如果每次都这样判断,会有些麻烦,所以很多jar包都对字符串判空做了封装。目前市面上主流的工具有:
 
  spring中的StringUtils
 
  jdbc中的StringUtils
 
  apache common3中的StringUtils
 
  不过spring中的StringUtils类只有isEmpty方法,没有isNotEmpty方法。
 
  jdbc中的StringUtils类只有isNullOrEmpty方法,也没有isNotNullOrEmpty方法。
 
  所以在这里强烈推荐一下apache common3中的StringUtils类,它里面包含了很多实用的判空方法:isEmpty、isBlank、isNotEmpty、isNotBlank等,还有其他字符串处理方法。
 
  问题来了,isEmpty和isBlank有啥区别?
 
  使用isEmpty方法判断:
 
  StringUtils.isNotEmpty(null)      = true
 
   StringUtils.isNotEmpty("")        = true
 
   StringUtils.isNotEmpty(" ")       = false
 
   StringUtils.isNotEmpty("bob")     = false
 
   StringUtils.isNotEmpty("  bob  ") = false
 
  使用isBlank方法判断:
 
  StringUtils.isBlank(null)      = true
 
  StringUtils.isBlank("")        = true
 
  StringUtils.isBlank(" ")       = true
 
  StringUtils.isBlank("bob")     = false
 
  StringUtils.isBlank("  bob  ") = false
 
  两个方法关键的区别在于这种" "空字符串的情况,isNotEmpty返回false,而isBlank返回true。
 

(编辑:财气旺网 - 财气网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!