1. 程式人生 > >java list set map 集合的區別

java list set map 集合的區別

容器 sortedset 允許 sort 子接口 因此 實現類 索引 存儲

List:1.可以允許重復的對象。

   2.可以插入多個null元素。

3.是一個有序容器,保持了每個元素的插入順序,輸出的順序就是插入的順序。

4.常用的實現類有 ArrayList、LinkedList 和 Vector。ArrayList 最為流行,它提供了使用索引的隨意訪問,而 LinkedList 則對於經常需要從 List 中添加或刪除元素的場合更為合適。

Set:1.不允許重復對象

   2. 無序容器,你無法保證每個元素的存儲順序,TreeSet通過 Comparator 或者 Comparable 維護了一個排序順序。

3. 只允許一個 null 元素

4.Set 接口最流行的幾個實現類是 HashSet、LinkedHashSet 以及 TreeSet。最流行的是基於 HashMap 實現的 HashSet;TreeSet 還實現了 SortedSet 接口,因此 TreeSet 是一個根據其 compare() 和 compareTo() 的定義進行排序的有序容器。

1.Map不是collection的子接口或者實現類。Map是一個接口。

2.Map 的 每個 Entry 都持有兩個對象,也就是一個鍵一個值,Map 可能會持有相同的值對象但鍵對象必須是唯一的。

3. TreeMap 也通過 Comparator 或者 Comparable 維護了一個排序順序。

4. Map 裏你可以擁有隨意個 null 值但最多只能有一個 null 鍵。

5.Map 接口最流行的幾個實現類是 HashMap、LinkedHashMap、Hashtable 和 TreeMap。(HashMap、TreeMap最常用)

java list set map 集合的區別