StringUtils工具包中的isNotBlank与isNotEmpty的区别

通俗点来讲:

String str = "xxx";

isNotEmpty(str)等价于 str != null && str.length > 0
(可以理解为 str !=null && str != "")

isNotBlank(str) 等价于 str != null && str.length > 0 && str.trim().length > 0

(可以理解为 str !=null && str != ""  &&  str != "n个空格")


同理
isEmpty 等价于 str == null || str.length == 0
isBlank  等价于 str == null || str.length == 0 || str.trim().length == 0

str.length > 0 && str.trim().length > 0  --->   str.length > 0


其中,强调一下可能存在的坑:

trim()方法,是去除字符串首尾的空格,字符串中间的空格仍然存在。比如 ” abc  efg “经过trim()后变成“abc efg"

总结:

综上所述,某些场景下,isNotBlank()使用要比isNotEmpty()好。

猜你喜欢

转载自blog.csdn.net/zz18435842675/article/details/80894985
今日推荐