面试3 -- Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?
2016-02-19 11:21
281 查看
1.==和equals()的区别
==是判断对象的内存地址,s1==s2,s2的引用的对象跟s1是同一个。
Object类的equals 也是判断对象的内存地址。底层也是用的==。
有一些类复写了equals(),判断的是此对象的具体内容
2.Set是Collection容器的一个子接口,它不允许出现重复元素。重写了equals。
此问题总结答案
Set里的元素是不能重复的。用iterator()方法来区分重复与否。equals()是判断两个Set是否相等
equals()和==方法决定引用值是否指向同一对象
equals()在类中被覆盖,为的是当两个分离对象的内容和类型相配的话,返回真值
相关文章 http://blog.csdn.net/fhm727/article/details/5221792下的十楼评论 http://www.cnblogs.com/zhxhdean/archive/2011/03/25/1995431.html
==是判断对象的内存地址,s1==s2,s2的引用的对象跟s1是同一个。
Object类的equals 也是判断对象的内存地址。底层也是用的==。
有一些类复写了equals(),判断的是此对象的具体内容
2.Set是Collection容器的一个子接口,它不允许出现重复元素。重写了equals。
此问题总结答案
Set里的元素是不能重复的。用iterator()方法来区分重复与否。equals()是判断两个Set是否相等
equals()和==方法决定引用值是否指向同一对象
equals()在类中被覆盖,为的是当两个分离对象的内容和类型相配的话,返回真值
相关文章 http://blog.csdn.net/fhm727/article/details/5221792下的十楼评论 http://www.cnblogs.com/zhxhdean/archive/2011/03/25/1995431.html
相关文章推荐
- 作为一个码农,你还需要了解什么?
- 三年程序员的实战开发经验之谈 — 做人做事
- 面试相关问题
- PHP程序员的技术成长规划(转载)
- Android工程师面试题大全
- PHP职业规划
- 【剑指Offer学习】【面试题36:数组中的逆序对】
- 面试题(二)
- 面试题(一)
- 码农十年连载四
- 关于PHP程序员解决问题的能力
- 程序员的安全感
- Java常用排序算法+程序员必须掌握的8大排序算法+二分法查找法
- iOS面试题总结(超全)
- 阿里巴巴常考面试题及汇总答案
- 腾讯面试感觉
- iOS HR面试问题小集(以后看…
- iOS 技术面试问题小集(以后…
- 职业迷茫的三种选择——北漂18年(43)
- 飞行的架构师和奔跑的程序员