码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • java里面获取map的key和value的方法


    获取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 map = new HashMap();
    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 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 vo : map.entrySet()){
    vo.getKey();
    vo.getValue();
    System.out.println(vo.getKey()+” "+vo.getValue());
    }*/

    /*//使用迭代器,获取key
    Iterator> iter = map.entrySet().iterator();
    while(iter.hasNext()){
    Entry entry = iter.next();
    String key = entry.getKey();
    String value = entry.getValue();
    System.out.println(key+" "+value);
    }*/

    //将map 转化为ArryList,但list里面的元素为Entry
    List> list = new ArrayList>(map.entrySet());
    Collections.sort(list,new Comparator>(){
    @Override
    public int compare(Entry o1,
    Entry o2) {
    int flag = o1.getValue().compareTo(o2.getValue());
    if(flag==0){
    return o1.getKey().compareTo(o2.getKey());
    }
    return flag;
    }
    });
    //遍历list得到map里面排序后的元素
    for(Entry en : list){
    System.out.println(en.getKey()+" "+en.getValue());
    }

    }

    }

  • 相关阅读:
    Linux shell
    生产者-消费者问题
    (附源码)ssm高校专升本考试管理系统 毕业设计 201631
    微信小程序基础
    如何在小程序的wxml中书写函数逻辑,wxs的使用
    Linux平台(CentOS7.5)安装GIT服务器+IDEA访问+WEB访问
    零基础入门初学 Python 需要安装哪些软件?
    重塑感知,荣耀金洋!金洋奖两项用户体验奖项公布
    Web前端开发——Ajax,Axios概述及在Vue框架中的使用
    FPGA项目开发之同步信号和亚稳态
  • 原文地址:https://blog.csdn.net/drnrrwfs/article/details/126405481
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号