java中Map、Set、List的簡單使用教程(快速入門)
Map、Set、List
List的常用方法
1、創(chuàng)建
List<Integer> list = new ArrayList<>(); List<Integer> list = new LinkedList<>(); //同時可以作為鏈表用 List<List<Integer>> list = new ArrayList<>();
2、遍歷
//本質(zhì)上其實是調(diào)用Iterator for(String s:list){ System.out.print(s); }
3、List轉(zhuǎn)化為數(shù)組
//兩種寫法都可以, 第一種微微規(guī)范一點 , 但是只能是封裝類型的數(shù)組 Integer array[] = list.toArray(new Integer[list.size()]); Integer array[] = list.toArray(); //java8的寫法, 可以借助stream來實現(xiàn)直接轉(zhuǎn)化為 基本類型數(shù)組 int[] result = list.stream().mapToInt(i->i).toArray();
4、數(shù)組轉(zhuǎn)化為List
//array[]是不是封裝類都無所謂, 不是封裝類型 系統(tǒng)會自動轉(zhuǎn)換為封裝類型 Integer array[] = {1,2,3}; intarray[] = {1,2,3}; List<Integer> list = new ArrayList<>(Arrays.asList(array)); //由此有直接默認給List賦值的簡便寫法 List<Integer> list = new ArrayList<>(Arrays.asList(1,2,3));
5、合并兩個List
List<Integer> list1 = new ArrayList<>(); List<Integer> list2 = new ArrayList<>(); list.addAll(list); //list2的元素全部加入list1
Set的常用方法
1、創(chuàng)建Set
Set<String> set = new HashSet<>(); Set<String> set = new TreeSet<>();
2、遍歷
for(Integer t:set){ System.out.print(t); }
3、數(shù)組轉(zhuǎn)Set
String[] strs = new String[]{"Tom", "Bob", "Jane"}; Set<String> set = new HashSet<>(Arrays.asList(strs));
3、Set轉(zhuǎn)數(shù)組
String[] strs = new String[]{"Tom", "Bob", "Jane"}; Set<String> set = new HashSet<>(Arrays.asList(strs)); //同樣的也是封裝類型不能直接轉(zhuǎn)為 基本類型 Object[] result = set.toArray();
Map的常見用法
Map最大的特點就是以 key-value的方式才存儲數(shù)據(jù)
創(chuàng)建Map集合
Map<String,Integer> map = new HashMap<>(); //無序 Map<String,Integer> map = new TreeMap<>(); //按key有序, 并可以實現(xiàn)自定義排序
遍歷Map集合
//通過索引遍歷, 效率不高 for(String key:map.keySet()){ Integer temp = map.get(key); } //通過entry遍歷 (推薦使用) for(Entry<String,Integer> entry: map.entrySet()){ String s = entry.getKey(); Integer a = entry.getValue(); }
//獲取值 map.get(object); map.getOrDefault(tmp, 0); //如果為空則設(shè)為0
注意事項
1、當(dāng)調(diào)用List的contains(Object o)方法時即使是相同內(nèi)容的對象,但不是相同對象會被判斷成不相同。需要手動在對象中編寫equals方法,用Object.equals(a,b);
其余的常見方法均在圖片中給出。
總結(jié)
到此這篇關(guān)于java中Map、Set、List的簡單使用教程的文章就介紹到這了,更多相關(guān)java中Map、Set、List使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
java.lang.ClassCastException的問題解決
本文主要介紹了java.lang.ClassCastException的問題解決,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-06-06idea創(chuàng)建的idea項目時springframework出現(xiàn)紅色的原因和解決方法
當(dāng)使用 IntelliJ IDEA 創(chuàng)建 Spring Framework 項目時,springframework 出現(xiàn)紅色可能是因為相關(guān)的 Spring Framework 依賴沒有正確加載或項目的配置有問題,本文給大家介紹了一些常見的原因和解決方法,需要的朋友可以參考下2023-09-09如何用Netty實現(xiàn)高效的HTTP服務(wù)器
這篇文章主要介紹了如何用Netty實現(xiàn)高效的HTTP服務(wù)器,對HTTP感興趣的同學(xué)可以參考一下2021-04-04Java快速實現(xiàn)PDF轉(zhuǎn)圖片功能實例代碼
PDFBox是一個開源Java類庫,用于讀取和創(chuàng)建PDF文檔,它支持文本提取、表單處理、文檔加密解密、合并分割、內(nèi)容覆蓋追加、文檔打印和轉(zhuǎn)換等功能,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2024-09-09