人人都逆天
2016-12-21 20:58
上次不是说equals()比较的是对象的引用是否指向同一块内存地址吗
equals没有重写的时候,和==一样比较的是内存地址
重写之后比较的是对象的内容
s1和s3指向同一个地址! (s1 == s3)这个是错的 两个不同的地址
equals()比较的是字符串的内容是否相同;==比较的是对象是否指向同一块内存地址。'
String s1 = new String("aaa");
String s2 = new String("aaa");
String s3 = s1;
则
s1和s2指示的内容相同!(s1.equals(s2)==true)
s1和s3指向同一个地址! (s1 == s3)
s1和s3指示的内容相同! (s1.equals(s3)==true)
Java入门第三季
409792 学习 · 4340 问题
相似问题