遍历Map对象的方法,本文以实例介绍,代码中注释详细,主要介绍while和for循环遍历,keySet()和entrySet()方法遍历的效率,其中entrySet()对遍历大数据可以大大提高运行速度。
//遍历Map对象的方法
//定义Map对象
Map<String,String> levelMap = new HashMap<String,String>(); //定义Map对象时最好标明类型,如<String,String>
levelMap.put("level1", "低级");
levelMap.put("level2", "中级");
levelMap.put("level3", "高级");
//方法1
//1、获得Map对象的健,用Map对象的方法keySet(),得到Set对象类型的健
Set<String> set = levelMap.keySet();
//2、获得Set对象的迭代器,用Set对象的iterator()方法,得到Iterator对象的值
Iterator<String> iterator = set.iterator();
//3、通过while循环控制语句遍历Itorator对象的迭代器,iterator.hasNext()为判断条件
System.out.println("方法1:");
while (iterator.hasNext()) {
//4、在迭代器iterator中获得Map对象健的值
String key = iterator.next();
String value = (String) levelMap.get(key);
System.out.println("key="+key+",value="+value);
}
//方法2
//1、通过for循环控制语句直接遍历levelMap对象的健
System.out.println("方法2:");
for (String key : (Set<String>)levelMap.keySet()) {
//2、通过健key获得健对应的值
String value = (String) levelMap.get(key);
System.out.println("key="+key+",value="+value);
}
//方法3:为了提高性能和运行效率,用entrySet()方法获得Map对象
Set<Entry<String, String>> entrySet = levelMap.entrySet();
Iterator iterator2 = entrySet.iterator();
System.out.println("方法3:");
//1、通过while循环控制语句遍历
while (iterator2.hasNext()) {
Entry<String, String> entry = (Entry<String, String>) iterator2.next();
//2、通过getKey获得健,通过getValue获值
System.out.println("key="+entry.getKey()+",value="+entry.getValue());
}
//方法4:为了提高性能和运行效率,用entrySet()方法获得Map对象
System.out.println("方法4:");
//1、通过for循环语句遍历
for (Map.Entry<String,String> entry : levelMap.entrySet()) {
//2、通过getKey获得健,通过getValue获值
System.out.println("key="+entry.getKey()+",value="+entry.getValue());
}