Set
系列集合
Set
系列集系概述
Set系列集合特点
无序:存取顺序不一致
不重复:可以去除重复
无索引:没有带索引的方法,所以不能使用普通
for
循环遍历,也不能通过索引来获取元素。
Set集合实现类特点
HashSet :
无序、不重复、无索引。
LinkedHashSet:
有序
、不重复、无索引。
TreeSet:
排序
、不重复、无索引。
Set集合的功能上基本上与Collection的API一致。
总结:
1.
Set
系列集合的特点。
无序、不重复、无索引。
2.
Set
集合的实现类特点。
HashSet
无序、不重复、无索引。
LinkedHashSet
有序
、不重复、无索引。
TreeSet
可排序
、不重复、无索引。
Set系列集合
HashSet
元素无序的底层原理:哈希表
HashSet底层原理
HashSet
集合底层采取
哈希表
存储的数据。
哈希表是一种对于增删改查数据性能都较好的结构。
哈希表的组成
JDK8之前的,底层使用数组+链表组成
JDK8开始后,底层采用数组+链表+红黑树组成。
在了解哈希表之前需要先理解哈希值的概念
哈希值
是JDK根据对象的地址,按照某种规则算出来的int类型的数值。