Java-equals和==

== 的作用

  基本类型:比较是否相等
  引用类型:比较内存地址值是否相等

equals 的作用

  引用类型:默认情况下,比较内存地址值是否相等。可以按照需求逻辑,重写对象的equals方法。

原因

Object类中equals方法是直接使用 == 的,源码如下:

1
2
3
public boolean equals(Object obj) {
return (this == obj);
}

String、Date等类中重写了equals方法,使该方法实现比较的作用