当前位置: 首页 > article >正文

java-HashMap、TreeMap、LinkedHashMap、ArrayList、LinkedList使用笔记

背景

Map<String, Integer> unsortedMap = new HashMap<>();  
unsortedMap.put("One", 1);  
unsortedMap.put("Two", 2);  
unsortedMap.put("Three", 3);  
unsortedMap.put("Four", 4);  

一、关于排序

  1. TreeMap:默认按照key排序
  2. 按照value排序,可使用如下代码
    public static Map<String, Integer> sortEnemyMap(Map<String, Integer> unsortedMap){
        List<Map.Entry<String, Integer>> list = new LinkedList<>(unsortedMap.entrySet());

        // Sort the list based on values
        Collections.sort(list, new Comparator<Map.Entry<String, Integer>>() {
            public int compare(Map.Entry<String, Integer> o1, Map.Entry<String, Integer> o2) {
            	//由大到小
                return (o2.getValue()).compareTo(o1.getValue());
                //由小到大
                //return (o1.getValue()).compareTo(o2.getValue());
            }
        });

        // Convert list to map again
        Map<String, Integer> sortedMap = new LinkedHashMap<>();
        for (Map.Entry<String, Integer> entry : list) {
            sortedMap.put(entry.getKey(), entry.getValue());
        }
        return sortedMap;
    }

二、关于转换

  1. HashMap转TreeMap
Map<String, Integer> sortedMap = new TreeMap<>(unsortedMap);
  1. HashMap转LinkedList
List<Map.Entry<String, Integer>> list = new LinkedList<>(unsortedMap.entrySet());  


http://www.kler.cn/a/161069.html

相关文章:

  • void * 指针与整数进行加减运算
  • SpringBoot(七)使用mapper注解编写sql操作数据库
  • PHP爬虫快速获取京东商品详情(代码示例)
  • 云防护单节点2T抗攻击能力意味着什么?
  • 如何线程安全的使用HashMap
  • middleware中间件概述
  • 什么是https 加密协议?https证书安装部署
  • 微信小程序复制功能
  • 如何通过内网穿透实现无公网IP也能远程访问内网的宝塔面板
  • C# WPF上位机开发(抽奖软件)
  • 【云原生系列】Kubernetes知识点
  • Python-字典详解
  • 一个简单的参数帮助框架,c实现
  • Android 架构实战MVI进阶
  • Vue3的watch函数中,第三个参数配置对象详细分析
  • uniapp横向滚动示例
  • JavaSE语法之五:数组的定义与使用(超详解!!!)
  • Android12之MediaCodec硬编解码调试手段(四十九)
  • python基于ModBusTCP服务端的业务实现特定的client
  • 反钓鱼防盗号,共筑校园安全防线!Coremail出席CERNET学术年会
  • 案例054:基于微信的追星小程序
  • 代码随想录算法训练营第四十二天 _ 动态规划_01背包问题、416.分割等和子集。
  • 医院有HIS系统,为什么还要开发预约挂号小程序?数据如何互通?
  • 前端笔记(三)CSS 盒子模型
  • ★538. 把二叉搜索树转换为累加树
  • PHP使用HTTP代码示例模板