java JDK7的Objects.equals(a,b)判断两对象是否相等


我们常用euqals方法判断两个字符串对象是否相等,如下:

strA.equals(strB);

但是这种方法当strA为空的时候会报空指针异常,一般用非空的对象调用equals方法。

在jdk7以后,java引入了比较两个对象的新的方法,Objects.equals(Object a, Object b) ,可以避免空指针异常。

import java.util.Objects;

if(Objects.equals(strA, strB) ){
    return 0;
}

底层设计原理:

public static boolean equals(Object a,Object b){
  return (a==b) || (a!=null && a.equals(b))     
}