初始化Map
先初始化一个map:
public class TestMap{
public static HashMap<String,String> map = new HashMap<>();
}
遍历map
方法一:keySet与values(需要分别获取所有的key和value推荐使用)
//获取所有的key
public void getKeySet(){
for(String key:map.keySet()){
System.out.println(key);
}
}
方法二:entrySet(需要获取所有的key和对应的value推荐使用,性能要优于keySet,拿到key,通过key获取value)
//通过遍历Entry,获取key,value
public void getEntry(){
for(Map.Entry<String, String> entry:map.entrySet()){
System.out.println(entry.getKey()+"--->"+entry.getValue());
}
}
方法三:Lambda(性能略低于上面的entrySet方法)
//通过java8提供的Lambda表达式
public void getByLambda(){
map.forEach((key,val)->{
System.out.println(key+"-->"+val);
});
}
方法四:Iterator(需要删除元素推荐使用)
//可以再遍历的过程中删除元素
public void getByItrator(){
Iterator<Map.Entry<String, String>> it = map.entrySet().iterator();
while(it.hasNext()){
Map.Entry<String, String> entry = it.next();
System.out.println(entry.getKey()+"--->"+entry.getValue());
it.remove(); //返回上一个next()方法返回的集合元素
}
}
方法五:entrySet get(key) (一般不推荐使用该方法遍历)
public void getMapByKeySet(){
for(String key:map.keySet()){
System.out.println(key+"--->"+map.get(key));
}
}
路漫漫其修远兮,吾将上下而求索。。。