通俗点来讲:
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()好。