工作 5 年的同事不懂 isEmpty 和 isBlank 的区别,差点惊掉我的下巴

最近公司新招进来一个工作5年的高级java的程序员,代码中 isEmpty 和 isBlank 的区别 都不知道,一顿瞎用,看代码都觉得有点别扭。让我一起来探讨下o
rg.apache.commons.lang3.StringUtils这个工具类

StringUtils.isEmpty()


System.
out.println(StringUtils.isEmpty(null));
System.out.println(StringUtils.isEmpty(""));
System.out.println(StringUtils.isEmpty(" "));
System.out.println(StringUtils.isEmpty("a"));
System.out.println(StringUtils.isEmpty(" a "));

输出结果


判断是否为空,可以看到 " " 空格是会绕过这种空判断,因为是一个空格,并不是严格的空值。

StringUtils.isNotEmpty()

相当= !isEmpty()

StringUtils.isAnyEmpty()

是否有一个为空,只有一个为空,就为true.

StringUtils.isNoneEmpty()

相当于!isAnyEmpty(css) , 必须所有的值都不为空才返回true

isBank系列

StringUtils.isBlank()

是否为真空值(空格或者空值)

StringUtils.isNotBlank()

是否真的不为空,不是空格或者空值 ,相当于!isBlank();

StringUtils.isAnyBlank()

是否包含任何真空值(包含空格或空值)

StringUtils.isNoneBlank()

是否全部都不包含空值或空格

老铁收藏起来呗

原文链接:,转发请注明来源!