Map的有序性_有序的map集合有哪些

Map的有序性_有序的map集合有哪些//使用LinkedHashMap代替无序的HashMap实现publicstaticvoidmain(String[]args){/***Constructsanemptyinsertion-ordered<tt>LinkedHashMap</tt>instance*withthedefaul…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

//使用LinkedHashMap代替无序的HashMap实现

 public static void main(String[] args) {

        /**
     * Constructs an empty insertion-ordered <tt>LinkedHashMap</tt> instance
     * with the default initial capacity (16) and load factor (0.75).
     */
        Map<String,Integer> linkedMap = new LinkedHashMap();
        linkedMap.put("a",14);
        linkedMap.put("c",18);
        linkedMap.put("x",19);

/**
    默认排序,支持comparable排序方式自定义
*/
        Map<String,Integer> treeMap = new TreeMap();
        treeMap.put("a",11);
        treeMap.put("x",10);
        treeMap.put("c",9);
        treeMap.put("b",100);

    /**
     * Constructs an empty <tt>HashMap</tt> with the default initial capacity
     * (16) and the default load factor (0.75).
     */
        Map<String,Integer> hashMap = new HashMap<>();
        hashMap.put("a",11);
        hashMap.put("x",10);
        hashMap.put("e",9);
        hashMap.put("b",100);
        for (Map.Entry<String, Integer> entry : linkedMap.entrySet()){
            System.out.println(entry.getKey()+"===="+entry.getValue());
        }
        System.out.println("========我是分割线=======");
        for (Map.Entry<String, Integer> entry : treeMap.entrySet()){
            System.out.println(entry.getKey()+"===="+entry.getValue());
        }
        System.out.println("========我是分割线=======");
        for (Map.Entry<String, Integer> entry : hashMap.entrySet()){
            System.out.println(entry.getKey()+"===="+entry.getValue());
        }
        //System.out.println(result);
    }

Map的有序性_有序的map集合有哪些

 

HashMap ;无序,高效

TreeMap:能够根据主键自动进行排序

LinkedHashMap:先进先出…即按照add的先后顺序排序.

 

LinkedHashMap是一个链表的数组.基于HashMap的链表方式实现机制.具有高效性,同时在内部增加了一个链表,用以存放元素的顺序.根据元素增加或者访问的先后顺序进行排序.

HashMap的一个功能缺点是他的无序性,被存入到HashMap中的元素,在遍历HashMap时,其输出是无序的.

TreeMap提供了一种完全不同的Map实现.TreeMap有着比HashMap更为强大的功能,实现了SortedMap接口.TreeMap的迭代输出将会以元素顺序进行.TreeMap的排序则根据元素的key进行排序,是基于元素的固有顺序(由Comparator或者Comparable确定)
 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/190359.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(1)
blank

相关推荐

  • Scrum 学习笔记

    Scrum 学习笔记

    2021年11月14日
  • 五个步骤教你数据清洗_数据仓库ods层

    五个步骤教你数据清洗_数据仓库ods层关于ODS层是否做数据清洗一直是存在争议的,但有一点是可以确定的,对于比较重的清洗工作是要留到后面数仓的ETL过程中进行处理。但是,有这么一种情况:我们在长期的生产实际过程中,发现部分已知的数据问题的处理可以通过自动化的方式来处理,这种方式通常在数据入库之前,做额外的加工处理后再做入库操作。数据清洗的主要工作是处理那些不符合要求的数据,从而提升数据质量,比如一些常见的问题:错误的数据、重复的数据错误的数据这种错误通常是业务系统处理不够健全造成的,比如字符串数据后面有回车空格、日期格式不正确、日期

  • 刚入校的孩子写了一封信电脑

    刚入校的孩子写了一封信电脑

  • pycharm2019.2.6版本改中文_pycharm怎么更改python环境

    pycharm2019.2.6版本改中文_pycharm怎么更改python环境1.文件——设置——项目——python解释器2.点最右边的设置图标——添加3.选择现有环境——点击右边省略号4.找到你要的python版本的地址——找到python.exe——确定做完这些就完成了

  • 织梦dedecms后台发布文章提示“标题不能为空”

    织梦dedecms后台发布文章提示“标题不能为空”

  • 登录的时候出现token无效_token已过期

    登录的时候出现token无效_token已过期msg:‘无效token’,status:400原因:用第三方组件element-ui或者其他组件的单个功能上传图片,没有用到axios发请求,而是组件内部自己封装了一个ajax去发请求,组件内部封装的ajax不携带Authorization字段.解决方案:1.首先在上传组件中手动添加:headers:”headerObj”2.再设置上传组件的请求头,添加Authorization字段:就解决了。…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号