判空
笔者最近在做毕设系统过程中,遇到诸多场景需要对各种object判空,特此总结,希望能帮到各位!
0.String类型
0.0、 开发中最常用的方法
if(StringUtils.isNotBlank(str))//判断字符串不为空
if(StringUtils.isBlank(str))//判断字符串为空
0.1、简单直接
if(s == null ||"".equals(s));
0.2、 比较字符串长度
if(s == null || s.length() <= 0);
0.3、不建议此方法
if(s == null || s.isEmpty());
0.4、比较直观
if (s == null || s == "");
1.Collection判断
1.0、基础方式
if(obj != null && !obj.isEmpty())
1.1、CollectionUtils
if(CollectionUtils.isNotEmpty(obj))
1.2、Objects
if(!Objects.isNull(obj))
1.3、若是String类型
if(Objects.equals(string1.string2))
1.4、Array判空
if(array != null && array.length() > 0)
2.备注
isNotBlank和isNotEmpty的区别
2.0、isNotBlank(判断某字符串是否不为空且长度不为0且不由空白符(whitespace)构成)
等于:!isBlank(String str)
等价于:str != null && str.length > 0 && str.trim().length > 0
StringUtils.isNotBlank(null) = false
StringUtils.isNotBlank("") = false
StringUtils.isNotBlank(" ") = false
StringUtils.isNotBlank(" ") = false
StringUtils.isNotBlank("\t \n \f \r") = false
StringUtils.isNotBlank("\b") = true
StringUtils.isNotBlank("bob") = true
StringUtils.isNotBlank(" bob ") = true
2.1、isNotEmpty(判断某字符串是否非空且长度不为0)
等于:!isEmpty(String str)
等价于:str != null && str.length > 0
StringUtils.isNotEmpty(null) = false
StringUtils.isNotEmpty("") = false
StringUtils.isNotEmpty(" ") = true
StringUtils.isNotEmpty(" ") = true
StringUtils.isNotEmpty("bob") = true
StringUtils.isNotEmpty(" bob ") = true