11问答网
所有问题
java:string中调用的equals方法已经重写了Object中的equals()了吗?
如题所述
举报该问题
推荐答案 推荐于2018-03-15
在Java中,String 、Math、还有Integer、Double。。。。等这些封装类重写了Object中的equals()方法,让它不再比较其对象在内存中的地址,而是比较对象中实际包含的整数的值,即比较的是内容。再强调一次,Object的equals()方法比较的是地址值,所以Object equals相等时,其hashcode必然相等,因为都是对象的地址,所以自己定义的类如果要加入到集合类中一定要记得重写这两个方法。
在Eclipse中重写hashcode和equals方法使相当方便的,只需要右键->source->Generate hashcode() and equals()便可以了。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://11.wendadaohang.com/zd/84F728S27.html
其他回答
第1个回答 2012-01-30
string类,它覆盖了Object的equals()方法。因为Object的equals()的实现是比较引用地址。
而string是用字符数组实现的,比较的话需要比较每一个字符,当然得覆盖Object的equals()来达到要求了。
另:可查看jdk的源码,推荐使用eclipse查看(在eclipse引用jdk安装目录中的src.zip即可)
第2个回答 2012-01-30
覆盖类 Object 中的 equals方法
第3个回答 2012-01-30
可以查看API,肯定重写了啊
相似回答
string
类
重写equal方法了吗
答:
此外,需要注意的是,当我们
重写equals方法
时,通常也需要重写hashCode方法,以维护equals方法和hashCode方法之间的契约:如果两个对象根据
equals(Object)
方法是相等的,那么调用这两个对象的hashCode方法必须产生相同的整数结果。这也是
Java的
约定,否则,例如在使用HashMap等数据结构时,可能会产生意外的结果。
S
...
大家正在搜
java方法重写和方法重载的区别
java中substring用法
java重写equals方法
java重写string方法
java中重写equals
java的equals方法
为什么重写equals方法
重写equals方法
什么时候重写equals方法
相关问题
java中自己定义的一个类中重写equals可以调用Stri...
Java中重写Object类中的equals()方法问题?
java重写equals方法中,if(this==objec...
java中重写Object类的equals方法为什么要重写h...
String类中Equals方法和Object类中的Equa...
java关于方法重写 hashcode equals
java.lang.String中equals方法重写
java equals(object obj){},为什么e...