我们都知道,map集合有两种遍历方式
Ⅰ、EntrySet
@Test
public void testEntrySet() throws Exception{
Map<String, Object> map = new HashMap<>();
map.put("name1", "刘德华");
map.put("name2", "黎明");
map.put("name3", "张学友");
map.put("name4", "郭富城");
Set<Map.Entry<String, Object>> set = map.entrySet();
for (Map.Entry<String, Object> entry : set) {
String key = entry.getKey();
Object value = entry.getValue();
System.out.println(key + "=" + value);
}
}Ⅱ、keySet
@Test
public void testkeySet() throws Exception{
Map<String, Object> map = new HashMap<>();
map.put("name1", "刘德华");
map.put("name2", "黎明");
map.put("name3", "张学友");
map.put("name4", "郭富城");
Set<String> keys = map.keySet();
for (String key : keys) {
Object value = map.get(key);
System.out.println(key + "=" + value);
}
}以上这两种方法,我个人还是觉得有点麻烦,我们完全可以使用lambda表达式来代替。
Ⅲ、终级方案
@Test
public void testLambda() throws Exception{
Map<String, Object> map = new HashMap<>();
map.put("name1", "刘德华");
map.put("name2", "黎明");
map.put("name3", "张学友");
map.put("name4", "郭富城");
map.forEach((key,value) -> {
System.out.println(key + "=" + value);
});
}使用过才知道,这个有多么酸爽啦。
版权声明:本文为m0_64081688原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。