java map遍历的四种方法总结

时间:2021-09-15 00:15:36

整理了关于javamap遍历的四种方法:

import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Map.Entry;import java.util.Set;publicclassMapTest{privateMap<String,String> map;publicMapTest(){
  map =newHashMap<String,String>();
  map.put("1","第一个数");
  map.put("2","第二个数");
  map.put("3","第三个数");}// 第一种方法(传统方法)publicvoid mapOne(){Set<String> set = map.keySet();Iterator<String> it = set.iterator();while(it.hasNext()){String key =(String) it.next();String value =(String) map.get(key);System.out.println(key +"="+ value);}}// 第二种方法(传统方法)publicvoid mapTwo(){Set set = map.entrySet();Iterator it = set.iterator();while(it.hasNext()){Entry entry =(Entry) it.next();String key =(String) entry.getKey();String value =(String) entry.getValue();System.out.println(key +"="+ value);}}// 第三种方法(增强for循环方法)publicvoid mapThree(){for(Object obj : map.keySet()){String key =(String) obj;String value =(String) map.get(key);System.out.println(key +"="+ value);}}// 第四种方法(增强for循环方法)publicvoid mapFour(){for(Object obj : map.entrySet()){Entry entry =(Entry) obj;String key =(String) entry.getKey();String value =(String) entry.getValue();System.out.println(key +"="+ value);}}publicstaticvoid main(String[] args){MapTest mapTest =newMapTest();System.out.println("=====first=====");
  mapTest.mapOne();System.out.println("=====second=====");
  mapTest.mapTwo();System.out.println("=====three=====");
  mapTest.mapThree();System.out.println("=====four=====");
  mapTest.mapFour();}}输出结果:

=====first=====3=第三个数2=第二个数1=第一个数=====second=====3=第三个数2=第二个数1=第一个数=====three=====3=第三个数2=第二个数1=第一个数=====four=====3=第三个数2=第二个数1=第一个数