public class Test{
public static void main(String[] args){
String s1 = null;
String s2 = "Hello Wolrd";
//这里会出现NullPointerException异常,调用者不能为null
System.out.println(s1.equals(s2));
//此时不会有NullPointerException异常,底层会自动先判断空
System.out.println(Objects.equals(s1,s2));
//判断对象是否为null,等价于==
System.out.println(Objects.isNull(s1)); //true
System.out.println(s1==null); //true
//判断对象是否不为null,等价于!=
System.out.println(Objects.nonNull(s2)); //true
System.out.println(s2!=null); //true
}
}
Objects是一个工具类,提供了一些方法可以对任意对象进行操作。主要方法如下
方法名 | 说明 |
---|---|
public static boolen equals(Object a,Object b) | 先做非空判断 再比较两个对象 |
public static boolean isNull(Object obj) | 判断对象是否为null 为null返回true 反之 |
public static boolean nonNull(Object obj) | 判断对象是否不为null 不为null返回true 反之 |