黑马程序员:集合类——2

来源:互联网 发布:银行数据采集器 编辑:程序博客网 时间:2024/06/01 22:04

---------------------- <a href="http://edu.csdn.net/heima" target="blank">android培训</a>、

<a href="http://edu.csdn.net/heima" target="blank">java培训</a>、期待与您交流!

----------------------

Set : 元素是无序的(存入和取出的顺序不一定一致),元素不可重复没有索引。
Set集合功能和其父类Collection是一致的。

 HashSet :  Set的子类,底层数据结构式哈希表,
 HashSet是如何保证元素唯一性的呢?
 通过元素的两个方法,hashCode和equals来完成,如果元素的hashCode相同,
 才会判断equals是否为true。如果hashCode不相同,则不调用equals。

对于判断元素是否存在,以及删除元素,依赖的操作方法是元素的hashCode和equals方法。

 TreeSet:也是Set的子类,可以对Set集合中的元素进行排序,底层数据结构式二叉树。
 保证元素的唯一性的依据,compareTo方法 返回0;
 
TreeSet排序的第一种方式:让元素自身具备比较性,元素需要实现Comparable接口,覆盖compareTo方

法,这种方式也成为元素的自然顺序,默认顺序。

 第二种方式:
 当元素自身不具备比较性时,或者具备的比较性不佳不是所需要的时,这是就要让集合自身具

备比较性,在集合初始化时,就有了比较方式

 

 

 


---------------------- <a href="http://edu.csdn.net/heima" target="blank">android培训</a>、

<a href="http://edu.csdn.net/heima" target="blank">java培训</a>、期待与您交流!

----------------------

原创粉丝点击