Iterable<E>:實現後可成為「foreach」語句目標。Collection<E>:繼承 Iterable,是集合層次結構根接口,基本方法 add、iterator,另有 size、isEmpty、contains 等。AbstractCollection 提供了基礎實現。Iterator<E>:替代 Enumeration,包含 next、hasNext、remove 三個方法。
以 Map 結尾的實現了 Map 接口,其餘實現 Collection 接口。
實現 List 接口。另一個動態數組 Vector 方法同步,ArrayList 非同步,無需同步時優先用 ArrayList 節省資源。數組中間插入/刪除需移動後續元素,代價大。
實現 List 接口,底層為雙向鏈表。刪除/插入只需更新鄰近節點引用。但不支持快速隨機訪問,按索引查找需從頭遍歷。
基於散列表(鏈表數組)實現 Set 接口,保證元素唯一(通過 equals 判斷)。不關心順序時使用,查找快。
有序集合,紅黑樹結構,添加元素自動排序。需排序時使用,否則用 HashSet 節省開銷。可傳入 Comparator 定製排序。
Queue:尾部添加,頭部刪除。Deque:雙端隊列,頭尾均可增刪,由 ArrayDeque 和 LinkedList 實現。PriorityQueue:優先級隊列,堆結構,元素按優先級檢索,適合任務調度。存儲鍵/值對,常用 HashMap(無序)和 TreeMap(有序)。集合框架提供三個視圖:keySet、values、entrySet。
WeakHashMap:自動清理長期存活映射中無用值。LinkedHashSet/Map:記住插入順序;訪問順序模式可實現 LRU 緩存。EnumSet/Map:枚舉類型專用,高效。IdentityHashMap:以 == 而非 equals 比較鍵,用於追蹤對象遍歷狀態。
核心接口:Collection、Map。List 有序,Set 拒絕重復。SortedSet/Map 暴露比較器,NavigableSet/Map(Java 6+)增加查找遍歷方法。
Hashtable:同步版 HashMap。Enumeration:早期遍歷接口,類似 Iterator。Properties:字符串鍵值對,可存檔/讀檔,帶默認表。Stack:繼承 Vector。BitSet:位集合。