关闭

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

77人阅读 评论(0) 收藏 举报

---------------------- <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>、期待与您交流!

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

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:4467次
    • 积分:186
    • 等级:
    • 排名:千里之外
    • 原创:17篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档