• 0015 Java学习笔记-集合-TreeMap集合


    主要的方法

    • 构造方法:
      • TreeMap();
      • TreeMap(Comparator<?super K> comparator);
      • TreeMap(Map<? extends K,? extends V> m);
      • TreeMap(SortedMap<K,? extends V> m);
    • 方法:
      • Map.Entry firstEntry();
      • Object firstKey();
      • Map.Entry lastEntry();
      • Object lastKey();
      • Map.Entry higherEntry(Object key);
      • Object higherHey(Object key);
      • Map.Entry lowerEntry(Object key);
      • Object lowerKey(Object key);
      • NavigableMap subMap(Object fromKey,boolean fromInclusive,Object toKey,boolean toInclusive);
      • SortedMap subMap(Object fromKey,Object toKey);
      • SortedMap tailMap(Object fromKey);
      • NavigableMap tailMap(Object fromKey,boolean inclusive);
      • SortedMap headMap(Object toKey);
      • NavigableMap headMap(Object toKey,boolean inclusive);

    TreeMap特点

    • Set-->SoredSet-->TreeSet
    • Map-->SoredMap-->TreeMap
    • TreeMap用红黑树结构对Key进行排序;HashMap将key-value存储在特定位置,而TreeMap则将key-value按顺序存储

    TreeMap的排序

    • 自然排序:
      • TreeMap所有的key都必须实现Comparable接口,都必须是同一个类的对象
    • 定制排序:
      • 在构造TreeMap对象是,可以传入一个排序器,即Comparator对象,这样就不需要key实现Comparable接口了

    equals()、compareTo()、TreeMap

    • TreeMap判断两个key相等的标准:compareTo() 返回0
    • 两个key的equals()方法返回true时,compareTo()应该返回0

    其他

    • Set和Map的关系十分密切,Java源码先实现了HashMap、TreeMap等集合,然后通过包装一个所有的value为null的Map集合实现了Set集合类
  • 相关阅读:
    软件设计师经验分享
    数据库设计基本规范
    UEditor上传文件的默认地址修改
    mongoDB简单介绍及安装
    链表中倒数第k个结点
    一入python深似海--对象的属性
    stl--vector 操作实现
    android5.x加入sim1,sim2标识
    leetCode 27.Remove Element (删除元素) 解题思路和方法
    java8新增特性(一)---Lambda表达式
  • 原文地址:https://www.cnblogs.com/sonng/p/6065091.html
Copyright © 2020-2023  润新知