- Objects是一个对象工具类,提供了一些操作对象的方法
- equals(对象1,对象2),先做非空判断,在比较两个对象
-
//1:objects.equals(对象名1,对象名2)用来先做非空判断,比较两个对象
boolean equals = Objects.equals(S, S2);
System.out.println(equals);
//细节:
//1:方法的底层会判断S是否为空,如果为空,直接返回false
//2:如果S不为空,则用S再次调用equals方法
//3:此时的S是student类型,最后也是会调用student中的方法
//4:如果没有重写比较地址值,反之比较属性值 - isNull(对象):判断对象是否为空
-
//public static Boolean isNull(object obj)判断对象是否为null,如果不为null,返回false,反之返回true
Student s3 = new Student();
System.out.println(Objects.isNull(s3));
Student s4 = null;
System.out.println(Objects.isNull(s4)); - nonNull(对象):判断对象是否不为空
-
//public static Boolean nonNull(object obj)判断对象是否为null,如果不为null,返回true,反之返回false
System.out.println(Objects.nonNull(s3));
System.out.println(Objects.nonNull(s4)); - 空指针异常
Student S = null;
Student S2 = new Student(1,"张三");
//Java中不能让空对象调用方法,否者会出现空指针异常Exception in thread "main" java.lang.NullPointerException
if (S!=null){
System.out.println(S.equals(S2));
}else {
System.out.println("空指针异常");
}