编写代码时总会有分支和判断,之前也一直判断null采用==或者equals之类的,其实还有很多方式可供采用,总结一下。
常规操作
if(null==jobInfo){ //省略 }如果是字符串判断null.还可以使用equals
Objects工具类中equals方法 (1.7之后)
源码:
由源码分析可以看出,两个参数相等时返回true,不等时返回false,此时判断null可以写成这样
if (Objects.equals("null",graduateTime)){//对象 //省略 }
Object工具类中在1.8之后还提供isNull和notNull进行空值判断
源码:
使用:
if(Objects.isNull(name)){ //为null } if(Objects.nonNull(name)){ //不null }
Objects还提供一个方法requireNonNull,空值抛出异常,不为空返回当前对象的值
源码
String s = Objects.requireNonNull(name, "不能为null");
谷歌提供strings
使用:
if (Strings.isNullOrEmpty(graduateTime)){ //省略 }
等等还有很多方式,有现成的api可以使用包括log4j中提供的strings也可以用来判断null