面试官:你知道Map集合都有几种遍历方式吗?
答:我只知道有个迭代器
面试官:那你不符合我们公司的岗位,谢谢
我们知道map框架的强大但是不知道他的遍历有几种那可丢脸了
回去该好好复习一下
主要有四种,上代码:
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class MapTraverse {
public static void main(String[] args) {
Map<String,String> map = new HashMap<String,String>();
map.put("1","zhangsan");
map.put("2","lisi");
map.put("3","wanger");
//遍历方式1:获取keySet
Set<String> keys = map.keySet();
for (String key:keys){
System.out.println(key+"--"+map.get(key));
}
//遍历方式2:entrySet
Set<Map.Entry<String, String>> entrySet = map.entrySet();
for (Map.Entry<String, String> entry:entrySet){
System.out.println("key:"+entry.getKey()+",value:"+entry.getValue());
}
//遍历方式3:获取map迭代器
Iterator<Map.Entry<String,String>> it=map.entrySet().iterator();
while(it.hasNext()){
Map.Entry<String,String> entry=it.next();
System.out.println("key:"+entry.getKey()+",value:"+entry.getValue());
}
//遍历方式4:遍历map.values的方式
for(String value:map.values()){
System.out.println(value);
}
}
}