50.md 2.4 KB
Newer Older
W
wizardforcel 已提交
1
# Java 初学者的集合教程
W
init  
wizardforcel 已提交
2 3 4

> 原文: [https://javabeginnerstutorial.com/core-java-tutorial/set-collection-tutorial-for-java-beginners/](https://javabeginnerstutorial.com/core-java-tutorial/set-collection-tutorial-for-java-beginners/)

W
wizardforcel 已提交
5
Set 是 Java Collection Framework 的一部分。 Set 是 *java.util* 程序包中的一个接口。 它实现了 Collection 接口。
W
init  
wizardforcel 已提交
6 7 8 9

# 与集合有关的要点

*   它不包含重复的元素。
W
wizardforcel 已提交
10
*   一些 Set 实现对 NULL 元素有限制。
W
init  
wizardforcel 已提交
11 12 13 14 15 16 17 18 19 20

# 设置接口的具体实现

*   哈希集
*   链接哈希集
*   树集
*   EnumSet

# 设置界面中的重要方法

W
wizardforcel 已提交
21
此接口不包含任何特殊方法。 它仅继承 Collection 接口的所有方法。
W
init  
wizardforcel 已提交
22 23 24

# 哈希集

W
wizardforcel 已提交
25 26
*   此类是 Java CollectionFramework 的一部分。
*   此类实现 Set 接口。
W
init  
wizardforcel 已提交
27 28 29 30
*   它由哈希表支持。
*   它是无序的。 (随着时间的推移,订单不可预测)
*   基本操作(如添加,删除,包含和大小)的恒定时间性能。
*   它不同步。
W
wizardforcel 已提交
31
*   Iterator 方法返回的迭代器为 FailFast。
W
init  
wizardforcel 已提交
32 33 34

## 建设者

W
wizardforcel 已提交
35 36
*   **HashSet(Collection <?扩展 E > c)**:构造一个新集合,其中包含指定集合中的元素。
*   **HashSet(int initialCapacity,float loadFactor)**:构造一个新的空集; 支持的 HashMap 实例具有指定的初始容量和指定的负载系数。
W
init  
wizardforcel 已提交
37 38 39 40 41 42 43
*   **HashSet(int initialCapacity)**:构造一个新的空集。

# 链接哈希集

*   元素的顺序是可预测的。
*   它维护遍历所有条目的双链表。
*   元素的顺序将与插入顺序相同。
W
wizardforcel 已提交
44 45
*   它允许 NULL 值。
*   与 HashSet 一样,它为基本操作提供恒定的时间性能。
W
init  
wizardforcel 已提交
46
*   链接列表上的迭代时间与大小成正比。
W
wizardforcel 已提交
47
*   初始容量和负载因子决定 LinkedHashSet 的性能。
W
init  
wizardforcel 已提交
48
*   它不同步。
W
wizardforcel 已提交
49
*   此类的 Iterator 方法返回的 Iterator 为 FAIL-FAST。
W
init  
wizardforcel 已提交
50 51 52 53

## Constructor

*   **LinkedHashSet(int initialCapacity,float loadFactor)**:构造一个具有指定初始容量和负载因子的新的空链接哈希集。
W
wizardforcel 已提交
54 55 56
*   **LinkedHashSet(int initialCapacity)**:构造一个新的,空的,具有指定初始容量和默认加载因子 0.75 的链接哈希集。
*   **LinkedHashSet()**:构造一个新的空链接哈希集,默认初始容量为 16,负载因子为 0.75。
*   **LinkedHashSet(Collection <?扩展 E > c)**:构造一个新的链接哈希集,其元素与指定的集合相同。
W
init  
wizardforcel 已提交
57 58

# 树集