JAVA集合框架:[16]set集合知识点
set:元素不可重复,是无序的。
set接口和collection方法一致
|--HashSet:内部结构是哈希表,是不同步的。
如何保证该集合的元素唯一性呢?
通过对象的hashcode和equals方法来完成对象唯一性的。
如果对象的hashcode值不同,那么不用判断equals方法,就直接存储到哈希表中。
如果对象的hashcode值相同,那么要再次判断对象的equals方法是否为true。
如果为true,视为相同元素,不存,如果为false,那么视为不同元素,就进行存储。
注意:如果元素要存储到hashset集合中,必须覆盖hashcode方法和equals方法
一般情况下,如果定义的累会产生很多对象,比如人、学生、书,通常都需要覆盖equals、hashcode方法,建立对象判断是否相同的依据。
|--TreeSet可以对set集合中的元素进行排序。是不同步的
if(this.hashcode()==obj.hashcode && this.equals(obj))
(共篇)上一篇:集合的知识点大杂...|下一篇:声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:72
阅读量:114
阅读量:86
阅读量:58
阅读量:151