获取map的key和value的方法分为两种形式:

map.keySet():先获取map的key,然后根据key获取对应的value;

map..entrySet():同时查询map的key和value,只需要查询一次;

两者的性能比较可以查看map.keySet()和map.EntrySet()的比较

以下是获取map的key和value,以及map里面的元素通过key或者value来比较大小并排序;

注意:当map的value值相等时,根据key值进行排序

public class MapSort {
 public static void main(String[] args) {
  Map<String,String> map = new HashMap<String,String>();
    map.put("b","4");
    map.put("a","5");
    map.put("c","3");
    map.put("d","5");
  
  //通过map.keySet()方法
  //方法一:通过得到key的值,然后获取value;
  for(String key : map.keySet()){
     String value = map.get(key);
     System.out.println(key+"  "+value);
  }
  //使用迭代器,获取key;
  Iterator<String> iter = map.keySet().iterator();
    while(iter.hasNext()){
     String key=iter.next();
     String value = map.get(key);
     System.out.println(key+" "+value);
  }
  //通过map.entrySet()方法
  //方法一:循环map里面的每一对键值对,然后获取key和value
  for(Entry<String, String> vo : map.entrySet()){
     vo.getKey();
     vo.getValue();
  }
  
  /*//使用迭代器,获取key
  Iterator<Entry<String,String>> iter = map.entrySet().iterator();
  while(iter.hasNext()){
     Entry<String,String> entry = iter.next();
     String key = entry.getKey();
     String value = entry.getValue();
     System.out.println(key+" "+value);
  }
  
  //将map<String,String> 转化为ArryList,但list里面的元素为Entry<String,String>
  List<Entry<String,String>> list = new ArrayList<Map.Entry<String,String>>(map.entrySet());
  Collections.sort(list,new Comparator<Entry<String,String>>(){
   @Override
   public int compare(Entry<String, String> o1,
       Entry<String, String> o2) {
      int flag = o1.getValue().compareTo(o2.getValue());
      if(flag==0){
         return o1.getKey().compareTo(o2.getKey());
      }
      return flag;
     }
  });
  //遍历list得到map里面排序后的元素
  for(Entry<String, String> en : list){
     System.out.println(en.getKey()+" "+en.getValue());
        }
   }

}

java里面获取map的key和value的方法的更多相关文章

  1. scala中获取Map中key和value的方法

    val scores=Map("Alice"->10,"Bob"->3,"Cindy"->8) // 获取所有的key v ...

  2. JAVA中获取文件MD5值的四种方法

    JAVA中获取文件MD5值的四种方法其实都很类似,因为核心都是通过JAVA自带的MessageDigest类来实现.获取文件MD5值主要分为三个步骤,第一步获取文件的byte信息,第二步通过Messa ...

  3. 获取Map API Key

    开发人员在基于Google Maps服务进行开发之前,需要申请一组验证过的Map API Key,这样才可以使用Google Maps服务.申请过程如下:1.在Eclipse中打开“Window”|“ ...

  4. 获取Map的key和value的两种方法

    //使用迭代器,获取key; /*Iterator<String> iter = map.keySet().iterator(); while(iter.hasNext()){ Strin ...

  5. 【Java】对Map按key和value分别排序

    一.什么是Map? 在讲解Map排序之前,我们先来稍微了解下map. map是键值对的集合接口,它的实现类主要包括:HashMap,TreeMap,Hashtable以及LinkedHashMap等. ...

  6. Java小知识-----Map 按Key排序和按Value排序

    Map排序的方式有很多种,这里记录下自己总结的两种比较常用的方式:按键排序(sort by key), 按值排序(sort by value). 1.按键排序 jdk内置的java.util包下的Tr ...

  7. java8 stream初试,map排序,list去重,统计重复元素个数,获取map的key集合和value集合

    //定义一个100元素的集合,包含A-Z List<String> list = new LinkedList<>(); for (int i =0;i<100;i++) ...

  8. 在java中获取Map集合中的key和value值

  9. js解析json,js转换json成map,获取map的key,value

    json串格式 { "10.10.11.1": { "target_1": "34.2", "target_3": &q ...

随机推荐

  1. Executors.newSingleThreadScheduledExecutor();线程池中放入多个线程问题

    转自:https://blog.csdn.net/u012062455/article/details/78247234/

  2. linux 实用指令

    通过init 来制定/切换不同的运行指令 查看linux 系统下,电脑的运行级别 vim  /etc/inittab 如何找回丢失的root密码? 进入到单用户模式,然后修改root密码 进入到单用户 ...

  3. python 机器学习实践入门

    机器学习概念概念 机器 学习是计算机科学的一个分支,从模式识别.人工智能和计算学习理论发展而来,我们可以将其作为数据挖掘的工具 侧重用于数据分析方法理解给定的数据 目的是:开发能够从先前观测的数据,通 ...

  4. Java基础之用记事本编辑java代码运行,并且打成jar包后运行

    使用记事本写java代码 1.在d盘新建一个记事本,名字叫做zhanzhuang.java,会询问不可用,是否继续,点击是 2.在里面编辑就如下内容,注意文件的名字要和 class 后面的名字相对应 ...

  5. virtual 初探

    两种代码方式: class person { public: void f() { cout << "person.f()" << endl; } }; c ...

  6. mui页面交互

    1.页面a准备函数 function hideBackBtn() { // $('.menua').removeClass('mui-icon-back').addClass('mui-icon-ba ...

  7. css:清楚浮动

    这个清楚浮动的方法最常用,给浮动字元素的父盒子,也就是不浮动元素,添加一个lhearfix的类,其类的css样式为: .clearfix:after{ /*必须要写这三句话*/ content:''; ...

  8. Learn English like a Baby – How to Sound Native

    Learn English like a Baby – How to Sound Native Share Tweet Share Tagged With: tips & tricks Wha ...

  9. 【363】python 相关小技巧

    1. 对列表进行乱序 通过 random.shuffle() 方法实现,直接对列表进行操作 >>> import random >>> a = list(range ...

  10. [C语言]变量VS常量

    -------------------------------------------------------------------------------------------- 1. 固定不变 ...