快捷导航

equals和==



==比较内存地址,所以它们不等于好理解;

但是我没重写equals方法,可是出来的结果为什么是相等的呢?

免责声明:本内容仅代表回答者见解不代表本站观点,请谨慎对待。

版权声明:作者保留权利,不代表本站立场。

回复

使用道具 举报

参与会员2

字符串类内部已经重写了equals方法,调用equals就是判断它们的内容是否相同。
回复

使用道具 举报

//这个是equals的源码。//把字符串每个字符拆分,然后对比。publicbooleanequals(ObjectanObject){if(this==anObject){returntrue;}if(anObjectinstanceofString){StringanotherString=(String)anObject;intn=value.length;if(n==anotherString.value.length){charv1[]=value;charv2[]=anotherString.value;inti=0;while(n--!=0){if(v1!=v2)returnfalse;i++;}returntrue;}}returnfalse;}
回复

使用道具 举报

可能感兴趣的问答

发新帖
  • 微信访问
  • 手机APP