日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

后端技术:盘点HashMap 的7种遍历方式

發布時間:2023/12/10 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 后端技术:盘点HashMap 的7种遍历方式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

HashMap 遍歷

大體上可以分為4類:

1,迭代器

2,ForEach 遍歷

3,lambda 表達式遍歷

4,StreamsApi 遍歷

但是每種類型下有不同的實現方式,所以又可以分為7種:

案例demo

1,使用迭代器 EntrySet 的方式遍歷

???@Test//1,使用迭代器?EntrySet?的方式遍歷public?void?demo1(){//創建Map?對象Map<Integer,?String>?map?=?new?HashMap<>();//添加數據map.put(1,"嬌嬌");map.put(2,"嬌嬌1");map.put(3,"嬌嬌2");map.put(4,"嬌嬌3");map.put(5,"嬌嬌4");map.put(5,"嬌嬌5");//遍歷Iterator<Map.Entry<Integer,?String>>?iterator?=?map.entrySet().iterator();while?(iterator.hasNext()){Map.Entry<Integer,?String>?next?=?iterator.next();System.out.println(next.getKey());System.out.println(next.getValue());}}

結果

2,使用迭代器的KeySet

???@Test //???2,使用迭代器的KeySetpublic?void?demo1(){//創建Map?對象Map<Integer,?String>?map?=?new?HashMap<>();//添加數據map.put(1,"嬌嬌");map.put(2,"嬌嬌1");map.put(3,"嬌嬌2");map.put(4,"嬌嬌3");map.put(5,"嬌嬌4");map.put(5,"嬌嬌5");//遍歷Iterator<Integer>?iterator?=?map.keySet().iterator();while?(iterator.hasNext()){Integer?key?=?iterator.next();System.out.print(key);System.out.print(map.get(key));}}

結果

3,使用 For Each EntrySet 的方式進行遍歷;

??@Test //3,使用 For Each EntrySet 的方式進行遍歷;public?void?demo1(){//創建Map?對象Map<Integer,?String>?map?=?new?HashMap<>();//添加數據map.put(1,"嬌嬌");map.put(2,"嬌嬌1");map.put(3,"嬌嬌2");map.put(4,"嬌嬌3");map.put(5,"嬌嬌4");map.put(5,"嬌嬌5");//遍歷for?(Map.Entry<Integer,String>?entry:?map.entrySet())?{System.out.println("entry.getKey()?=?"?+?entry.getKey());System.out.println("entry.getValue()?=?"?+?entry.getValue());}}

結果

4,使用 For Each KeySet 的方式進行遍歷;

??@Test //4,使用 For Each KeySet 的方式進行遍歷;public?void?demo1(){//創建Map?對象Map<Integer,?String>?map?=?new?HashMap<>();//添加數據map.put(1,"嬌嬌");map.put(2,"嬌嬌1");map.put(3,"嬌嬌2");map.put(4,"嬌嬌3");map.put(5,"嬌嬌4");map.put(5,"嬌嬌5");//遍歷for?(Integer?key:?map.keySet())?{System.out.println(key);System.out.println(map.get(key));}}

結果

5,使用 Lambda 表達式的方式進行遍歷;

????@Test //5,使用 Lambda 表達式的方式進行遍歷;public?void?demo1()?{//創建Map?對象Map<Integer,?String>?map?=?new?HashMap<>();//添加數據map.put(1,?"嬌嬌");map.put(2,?"嬌嬌1");map.put(3,?"嬌嬌2");map.put(4,?"嬌嬌3");map.put(5,?"嬌嬌4");map.put(5,?"嬌嬌5");//遍歷map.forEach((key,value)?->?{System.out.print(key);System.out.print(value);});}

結果

6,使用 Streams API 單線程的方式進行遍歷;

????@Test //6,使用 Streams API 單線程的方式進行遍歷;public?void?demo1()?{//創建Map?對象Map<Integer,?String>?map?=?new?HashMap<>();//添加數據map.put(1,?"嬌嬌");map.put(2,?"嬌嬌1");map.put(3,?"嬌嬌2");map.put(4,?"嬌嬌3");map.put(5,?"嬌嬌4");map.put(5,?"嬌嬌5");//遍歷map.entrySet().stream().forEach((integerStringEntry?->?{System.out.println(integerStringEntry.getKey());System.out.println(integerStringEntry.getValue());}));}

結果

7,使用 Streams API 多線程的方式進行遍歷。

????@Test //6,使用 Streams API 單線程的方式進行遍歷;public?void?demo1()?{//創建Map?對象Map<Integer,?String>?map?=?new?HashMap<>();//添加數據map.put(1,?"嬌嬌");map.put(2,?"嬌嬌1");map.put(3,?"嬌嬌2");map.put(4,?"嬌嬌3");map.put(5,?"嬌嬌4");map.put(5,?"嬌嬌5");//遍歷map.entrySet().parallelStream().forEach((integerStringEntry?->?{System.out.println(integerStringEntry.getKey());System.out.println(integerStringEntry.getValue());}));}

結果

IT技術分享社區

個人博客網站:https://programmerblog.xyz

文章推薦程序員效率:畫流程圖常用的工具程序員效率:整理常用的在線筆記軟件遠程辦公:常用的遠程協助軟件,你都知道嗎?51單片機程序下載、ISP及串口基礎知識硬件:斷路器、接觸器、繼電器基礎知識

總結

以上是生活随笔為你收集整理的后端技术:盘点HashMap 的7种遍历方式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。