初始化

Set 是一个不能包含重复元素的 Collection。它模拟了数学集抽象。

Set 在各种类别中实现,如 HashSetTreeSetLinkedHashSet

例如:

HashSet 的:

Set<T> set = new HashSet<T>();

这里 T 可以是 StringInteger 或任何其他物体HashSet 允许快速查找 O(1),但不对添加到其中的数据进行排序,并且丢失了项目的插入顺序。

TreeSet 中:

它以有序的方式存储数据,牺牲一些速度用于采用 O(lg(n))的基本操作。它不保持项目的插入顺序。

TreeSet<T> sortedSet = new TreeSet<T>();

LinkedHashSet:

它是 HashSet 的链表实现。一旦按照添加的顺序迭代项目。没有为其内容提供排序。提供 O(1) 基本操作,但是在维护支持链表时成本高于 HashSet

LinkedHashSet<T> linkedhashset = new LinkedHashSet<T>();