當前位置:首頁 » 服務存儲 » 練習map存儲值
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

練習map存儲值

發布時間: 2023-03-06 10:28:02

1. list,map,set三個介面存儲元素時各有什麼特點

(一)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。

(三)map

1、Map不是collection的子介面或者實現類。Map是一個介面。

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

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

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

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

(1)練習map存儲值擴展閱讀

list和set、map之間的轉化方式:

1、list轉成set集合

Set<Student>

studentSet=studentList.stream().map(Student::getId).collect(Collectors.toSet());

2、list轉成map

Map<String,Student>

studentMap=studentList.stream().collect(Collectors.toMap(Student::getId,a -> a,(k1,k2)->k1));

3、list轉成map並且根據student中的name進行分組

Map<String,List<Student>>

group=studentList.stream().collect(Collectors.groupingBy(Student::getName));

2. java中map可以存放哪些信息

java map是以鍵值對的方式保存數據的,map中的鍵key和值value可以是各種對象,如String、Double、Integer、或者自己定義的類對象,不能是普通基本類型如int、double等