Set:不包含重複元素的集合,核心實現 HashSet(無序、高性能)與 LinkedHashSet(有序、插入序)。
Setset = new HashSet<>(); set.add("Beijing"); set.add("ShangHai"); set.add("HeFei"); set.add("DaLian"); set.add("GuangZhou"); set.add("GuangZhou"); // 重複,僅保留一個 System.out.println(set); // 無序輸出,如 [ShangHai, Beijing, HeFei, DaLian, GuangZhou] Set set2 = new LinkedHashSet<>(); set2.add("Beijing"); set2.add("ShangHai"); set2.add("HeFei"); set2.add("DaLian"); set2.add("GuangZhou"); set2.add("GuangZhou"); System.out.println(set2); // 有序輸出 [Beijing, ShangHai, HeFei, DaLian, GuangZhou]

| 特性 | HashSet | LinkedHashSet |
|---|---|---|
| 底層結構 | HashMap | LinkedHashMap(雙向鏈表維序) |
| 元素順序 | 無序(由 hash 決定) | 插入順序 |
| 插入/查找性能 | O(1) 最優 | O(1) 略低(維護鏈表) |
| 去重依據 | equals() + hashCode() | 同左 |
// Iterator Iteratorit = set.iterator(); while (it.hasNext()) System.out.println(it.next()); // 增強 for for (String s : set) System.out.println(s);