各位小伙伴大家好,在之前的文章中,小编也介绍过equals方法,默认比较地址值Java之Object类的equals方法上。这次小编要介绍的是,Object类当中的equals方法对于空指针异常的优化问题。
在JDK7添加了Objects工具类,它提供了一些方法来操作对象,它由一些静态的使用方法组成,这些方法是null-save(空指针安全的)或null-tolerant(容忍空指针的),用于计算对象hashcode,返回对象的字符串表示形式,比较两个对象。
在比较两个对象的时候,Object的equals方法容易抛出空指针异常,而Object类中的equals方法就优化了这个问题。
方法如下:
public static boolean equals(Object a,Object b):判断两个对象是否相等。
源码:
public static boolean equals(Object a,Object b){
return(a==b)||(a!==null && a.equals(b));
}
代码如下:
public class Demo03Objects {public static void main(String[] args) { //String a1="dada"; String a1=null;//null是不能调用方法的,会出现空指针异常:NullPointerException String a2="dadc"; // boolean b1=a1.equals(a2); /*Object类的equals方法:对两个对象进行比较,防止空指针异常 public static boolean equals(Object a,Object b){ return(a==b)||(a!=null&&a.equals(b)); }*/ boolean b2= Objects.equals(a1,a2); System.out.println(b2); }}
对于Object当中equals方法优化空指针异常问题,小编就先说到这里,希望这篇文章可以帮到大家,也欢迎各位小伙伴补充和纠错。
【关键词:青岛Java培训,正规Java开发培训,学Java开发多少钱,Java培训哪家好,中享思途】