java中Map、Set、List的簡單使用教程(快速入門)

1、創(chuàng)建
List<Integer> list = new ArrayList<>(); List<Integer> list = new LinkedList<>(); //同時可以作為鏈表用List<List<Integer>> list = new ArrayList<>();
2、遍歷
//本質上其實是調用Iteratorfor(String s:list){System.out.print(s);}
3、List轉化為數組
//兩種寫法都可以, 第一種微微規(guī)范一點 , 但是只能是封裝類型的數組Integer array[] = list.toArray(new Integer[list.size()]);Integer array[] = list.toArray();//java8的寫法, 可以借助stream來實現(xiàn)直接轉化為 基本類型數組int[] result = list.stream().mapToInt(i->i).toArray();
4、數組轉化為List
//array[]是不是封裝類都無所謂, 不是封裝類型 系統(tǒng)會自動轉換為封裝類型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的元素全部加入list1Set的常用方法
1、創(chuàng)建Set
Set<String> set = new HashSet<>();Set<String> set = new TreeSet<>();
2、遍歷
for(Integer t:set){ System.out.print(t);}
3、數組轉Set
String[] strs = new String[]{'Tom', 'Bob', 'Jane'};Set<String> set = new HashSet<>(Arrays.asList(strs));
3、Set轉數組
String[] strs = new String[]{'Tom', 'Bob', 'Jane'};Set<String> set = new HashSet<>(Arrays.asList(strs));//同樣的也是封裝類型不能直接轉為 基本類型Object[] result = set.toArray();Map的常見用法
Map最大的特點就是以 key-value的方式才存儲數據
創(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); //如果為空則設為0
注意事項
1、當調用List的contains(Object o)方法時即使是相同內容的對象,但不是相同對象會被判斷成不相同。需要手動在對象中編寫equals方法,用Object.equals(a,b);
其余的常見方法均在圖片中給出。
總結到此這篇關于java中Map、Set、List的簡單使用教程的文章就介紹到這了,更多相關java中Map、Set、List使用內容請搜索好吧啦網以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持好吧啦網!
相關文章:
1. php模擬實現(xiàn)斗地主發(fā)牌2. 理解PHP5中static和const關鍵字3. jQuery 實現(xiàn)DOM元素拖拽交換位置的實例代碼4. Java如何基于反射機制獲取不同的類5. IntelliJ IDEA安裝插件的方法步驟6. Android table布局開發(fā)實現(xiàn)簡單計算器7. MyBatis中的JdbcType映射使用詳解8. Android 在 res/layout 文件夾 下創(chuàng)建一個 子文件夾實例9. Python random庫使用方法及異常處理方案10. .Net Core使用Coravel實現(xiàn)任務調度的完整步驟

網公網安備