Set
Set
java.util.Set接口
-
不允许存储重复元素
-
没有索引
实现Iterable接口的类可以使用foreach
java.util.HashSet
-
不允许存储重复元素
-
没有索引
-
是一个无序集合
-
底层是一个哈希表(查询速度非常快)
哈希表:存储数据的数据结构
1.8之前哈希表=数组+链表
1.8之后哈希表=数组+链表/红黑树(提高查询效率)
Set集合在调用add方法的时候会调用元素的hashCode方法和equals方法,判断元素是否重复
LinkedHashSet
java.util.LinkedHashSet
- 不允许存储重复元素
- 没有索引
- 有序集合
- 底层是哈希表,多一条链表,保证了元素的顺序