基础篇-equals和==得区别

首先看看他们都是干啥得

==是一种运算符,对于基础数据类型,是作为数值比较是否相等。

对于对象,是比较对象得地址是否一致。

equals是Object这个超类提供得方法,查看底层实现

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

没错,还是调用了 == 运算符,所以呢本质没什么区别。

但是在实际过程中,是要重写equals得,因为大多数比较都是比较对象内部得某些属性值,而==还是同样比较地址,因此区别在此。

猜你喜欢

转载自blog.csdn.net/ysj4428/article/details/81302906