No.5.2 TreeMap 有序Map

概述:

(1)TreeMap是基于二叉树的Map接口实现。
(2)这里有序指的是TreeMap中的键是有序的,我们可以知道Map中的键可以转化一个Set集合,所以实现TreeMap排序的方法是实现,TreeMap中键对象的排序;
(3)排序方法当然也有两种:
第一种:TreeMap(Comparator<? super K> comparator) 传入一个比较器;
第二种:将 存储的键对象实现Comparable接口;

这里常用的是第一中方法:

这里使用上一节的比较器MyComparator();

public class HashMapDemo {
public static void main(String[] args) {
    TreeMap<Person,Integer> map = new TreeMap<>(new MyComparator());
    map.put(new Person(1,"zhangsan"),1);
    map.put(new Person(2,"lisi"),2);
    map.put(new Person(3,"lisi"),3);
    
    Set<Map.Entry<Person,Integer>> entry = map.entrySet();
    for(Map.Entry<Person,Integer > temp : entry){
        System.out.println(temp.getKey() + ": " + temp.getValue());
    }
}  
}

输出结果为:
[ id: 2,name: lisi]: 2
[ id: 3,name: lisi]: 3
[ id: 1,name: zhangsan]: 1

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Java集合框架 Java平台提供了一个全新的集合框架。“集合框架”主要由一组用来操作对象的接口组成。不同接口描述...
    小石38阅读 2,915评论 0 0
  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,485评论 11 349
  • 一、基本数据类型 注释 单行注释:// 区域注释:/* */ 文档注释:/** */ 数值 对于byte类型而言...
    龙猫小爷阅读 9,738评论 0 16
  • java笔记第一天 == 和 equals ==比较的比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量...
    jmychou阅读 5,416评论 0 3
  • 超越大多数人让自己变得卓越,不管在哪个维度上,我们都在某个or多个维度追求比他人优秀。不管这种是真实的优秀还是虚假...
    水平生阅读 1,495评论 0 0

友情链接更多精彩内容