zoukankan      html  css  js  c++  java
  • entrySet() 详解以及(四种遍历map的方式)

     

    Entry

    由于Map中存放的元素均为键值对,故每一个键值对必然存在一个映射关系。 
    Map中采用Entry内部类来表示一个映射项,映射项包含Key和Value (我们总说键值对键值对, 每一个键值对也就是一个Entry)
    Map.Entry里面包含getKey()和getValue()方法

    1.  
      Iterator<Map.Entry<Integer, Integer>> it=map.entrySet().iterator();
       
      while(it.hasNext()) {
       
      Map.Entry<Integer,Integer> entry=it.next();
       
      int key=entry.getKey();
       
      int value=entry.getValue();
       
      System.out.println(key+" "+value);
       
      }
      

        

    2.  

    entrySet

    entrySet是 java中 键-值 对的集合,Set里面的类型是Map.Entry,一般可以通过map.entrySet()得到。

    • entrySet实现了Set接口,里面存放的是键值对。一个K对应一个V。

    用来遍历map的一种方法。

    1.  
      Set<Map.Entry<String, String>> entryseSet=map.entrySet();
       
       
       
      for (Map.Entry<String, String> entry:entryseSet) {
       
       
       
      System.out.println(entry.getKey()+","+entry.getValue());
       
       
       
      }
      

        

    2.  

    即通过getKey()得到K,getValue得到V。

    keySet

    还有一种是keySet, keySet是键的集合,Set里面的类型即key的类型

    1.  
       1 Set<String> set = map.keySet();
       2  
       3  
       4  
       5 for (String s:set) {
       6  
       7  
       8  
       9 System.out.println(s+","+map.get(s));
      10  
      11  
      12  
      13 }
    2.  

    四种遍历Map方式:

    1.  1 public static void main(String[] args) {
       2  
       3  
       4  
       5 Map<String, String> map = new HashMap<String, String>();
       6  
       7 map.put("1", "value1");
       8  
       9 map.put("2", "value2");
      10  
      11 map.put("3", "value3");
      12  
      13  
      14  
      15 //第一种:普遍使用,二次取值
      16  
      17 System.out.println("通过Map.keySet遍历key和value:");
      18  
      19 for (String key : map.keySet()) {
      20  
      21 System.out.println("key= "+ key + " and value= " + map.get(key));
      22  
      23 }
      24  
      25  
      26  
      27 //第二种
      28  
      29 System.out.println("通过Map.entrySet使用iterator遍历key和value:");
      30  
      31 Iterator<Map.Entry<String, String>> it = map.entrySet().iterator();
      32  
      33 while (it.hasNext()) {
      34  
      35 Map.Entry<String, String> entry = it.next();
      36  
      37 System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
      38  
      39 }
      40  
      41  
      42  
      43 //第三种:推荐,尤其是容量大时
      44  
      45 System.out.println("通过Map.entrySet遍历key和value");
      46  
      47 for (Map.Entry<String, String> entry : map.entrySet()) {
      48  
      49 System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
      50  
      51 }
      52  
      53  
      54  
      55 //第四种
      56  
      57 System.out.println("通过Map.values()遍历所有的value,但不能遍历key");
      58  
      59 for (String v : map.values()) {
      60  
      61 System.out.println("value= " + v);
      62  
      63 }
      64  
      65 }

       

  • 相关阅读:
    python第九十天----jquery
    收藏所用C#技术类面试、笔试题汇总
    线程内打开窗体
    有关正则表达式的一些总结
    XML与Object的范型转换
    开始工作了
    Oracle查询数据表结构(字段,类型,大小,备注)
    MyEclipse安装jbpm插件
    MyEclipse启动tomcat增加内存配置
    extJs常用的四种Ajax异步提交
  • 原文地址:https://www.cnblogs.com/666boyun/p/14295438.html
Copyright © 2011-2022 走看看