黑马程序员技术交流社区
标题:
Set里的元素是不是能够重复的,那么用什么方法来区分重复与否呢?
[打印本页]
作者:
我干阿衰
时间:
2015-5-9 22:13
标题:
Set里的元素是不是能够重复的,那么用什么方法来区分重复与否呢?
Set里的元素是不是能够重复的,那么用什么方法来区分重复与否呢?使用==还是用equals()?
他们有什么区别?
作者:
短暂的火光
时间:
2015-5-10 22:03
==是变量的相等判断 equals()则是对字符串的相等判断 if(n==5) String s="jk"; String t="ty"; s.equals(t)
作者:
thoris
时间:
2015-5-10 22:43
HashSet 靠hashcode 和equals
TreeSet靠比较方法 可以实现接口或者自定义比较器
作者:
凉仁日记
时间:
2015-5-11 00:15
简单点说,== 是对变量的相等判断,equals是对字符串的判断
作者:
showdy
时间:
2015-5-11 12:44
Set集合中不重复,主要依赖add()方法底层的源码,hashset集合add()方法主要依赖hashcode()和equals()方法,而treeset集合中add()底层主要依赖实现comparable和comparator接口。
对于非自定义对象(具体可比性的对象),因为hashset和treeset已经实现了比较,不要重新方法,而
对于自定义对象(不具有可比性的对象),使用hashset使用需要重写hashcode和equals方法,而使用TreeSet集合需要实现comparator或者comparable重写compare()或者compareTo()方法,实现比较。
作者:
殃金咒
时间:
2015-5-11 12:51
膜拜众神
作者:
fenglinluomu
时间:
2015-5-11 13:12
楼上加一
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2