我想知道 .equals()方法是否在JAVA内部检查null条件,或者我们必须这样做a.equals(null)。
答案 0 :(得分:1)
.equals()
不检查空状态,a.equals(null)
也不检查,因为争论必须是null
不是的对象。
您应该使用的是a!=null && a.equals(b)
如果a
为null
,则语句将短路,从不调用.equals
并阻止空指针异常。
答案 1 :(得分:0)
Object
类的直接子类的每个类都继承了equals()
类的Object
方法的实现。并且此实现不会进行任何空检查。它唯一检查的是被比较的两个对象是否是同一个实例。
如果你想使用它,你应该自己覆盖它。