总结
- 对于null和空字符串,isEmpty() 和 isBlank() 效果是一样的
- 对于全部是空格或者制表符等不可见字符的字符串,isEmpty判断为fasle, isBlank判断为true
测试代码
@Test
public void stringBlankTest(){
String s1 = null;
String s2 = "";
String s3 = " ";
log.info("blank for null :{}", StringUtils.isBlank(s1));
log.info("empty for null :{}", StringUtils.isEmpty(s1));
log.info("blank for '' :{}", StringUtils.isBlank(s2));
log.info("empty for '' :{}", StringUtils.isEmpty(s2));
log.info("blank for ' ' :{}", StringUtils.isBlank(s3));
log.info("empty for ' ' :{}", StringUtils.isEmpty(s3));
}