map常用遍历方法

//循环遍历map的方法 
public class MapF {  
 public static void main(String[] args) { 
  
  Map<String, Integer> tempMap = new HashMap<String, Integer>();
  tempMap.put("a",12);
  tempMap.put("b",34);
  tempMap.put("c",56);
  // JDK1.4中
  // 遍历方法一 hashmap entrySet() 遍历
  Iterator it = tempMap.entrySet().iterator();
  while (it.hasNext()) {
  Map.Entry entry = (Map.Entry) it.next();
  Object key = entry.getKey();
  Object value = entry.getValue();
  System.out.println("key=" + key + " value=" + value);
  }
  System.out.println("");
  // JDK1.5中,应用新特性For-Each循环
  // 遍历方法二
  for (Map.Entry<String, Integer> entry : tempMap.entrySet()) {
  String key = entry.getKey().toString();
  String value = entry.getValue().toString();
  System.out.println("key=" + key + " value=" + value);
  }
  System.out.println("");
  // 遍历方法三 hashmap keySet() 遍历
  for (Iterator i = tempMap.keySet().iterator(); i.hasNext();) {
  Object obj = i.next();
  System.out.println(obj);// 循环输出key
  System.out.println("key=" + obj + " value=" + tempMap.get(obj));
  }
  for (Iterator i = tempMap.values().iterator(); i.hasNext();) {
  Object obj = i.next();
  System.out.println(obj);// 循环输出value
  }
  // 遍历方法四 treemap keySet()遍历
  for (Object o : tempMap.keySet()) {
  System.out.println("key=" + o + " value=" + tempMap.get(o));
  }
  System.out.println("11111");
  // java如何遍历Map <String, ArrayList> map = new HashMap <String,
  // ArrayList>();
  System.out.println("java 遍历Map <String, ArrayList> map = new HashMap<String, ArrayList>();");
  Map<String, ArrayList> map = new HashMap<String, ArrayList>();
  Set<String> keys = map.keySet();
  Iterator<String> iterator = keys.iterator();
  while (iterator.hasNext()) {
  String key = iterator.next();
  ArrayList arrayList = map.get(key);
  for (Object o : arrayList) {
   System.out.println(o);
  }
  }
  Map<String, List> newMap = new HashMap<String, List>();
  List list1 = new ArrayList();
  list1.add("A");
  list1.add("B");
  list1.add("C");
  newMap.put("ABC",list1);
  List list2 = new ArrayList();
  list2.add("D");
  list2.add("E");
  list2.add("F");
  newMap.put("DEF",list2);

  for (Map.Entry entry : newMap.entrySet()) {
  String key = entry.getKey().toString();
  List<String> list= (List) entry.getValue();
  for (String value : list) {
  java.lang.System.out.println(key + "====" + value);
  }
  }
  //遍历方法五 lambada表达式
  newMap.forEach((k,v)->{
  System.out.println("key : " + k + " value : " + v);
  });  
}
}

下面是运行结果:

 





参考文章:https://blog.csdn.net/zhu1qiu/article/details/71170850



posted on 2018-04-15 23:09  我亦未曾饶岁月  阅读(483)  评论(0编辑  收藏  举报

导航