找回密码
 立即注册
首页 业界区 安全 10.Java SDK源码分析系列笔记-TreeMap

10.Java SDK源码分析系列笔记-TreeMap

锄淫鲷 2025-6-30 18:17:11
目录

  • 1. 是什么
  • 2. 使用
  • 3. 源码分析

    • 3.1. uml
    • 3.2. 构造方法
    • 3.3. put
    • 3.4. get
    • 3.5. containsKey
    • 3.6. remove

  • 4. 参考

1. 是什么

基于红黑树(平衡二叉搜索树)实现,效率为O(logN)的key-value对。
迭代时输出的顺序是

  • 按照key的自然顺序来遍历的
  • 也可以使用自定义的Comparator进行排序
2. 使用
  1. public class TreeMapTest
  2. {
  3.     public static void main(String[] args)
  4.     {
  5.         TreeMap<String, String> map = new TreeMap<>();
  6.         map.put("1", "a");
  7.         map.put("3", "c");
  8.         map.put("2", "b");
  9.         map.put("4", "d");
  10.         for (Map.Entry<String, String> entry : map.entrySet())
  11.         {
  12.             /*
  13.             *   1=a
  14.                 2=b
  15.                 3=c
  16.                 4=d
  17.             * */
  18.             System.out.println(entry);
  19.         }
  20.     }
  21. }
复制代码
3. 源码分析

3.1. uml


3.2. 构造方法

[code]public class TreeMap    extends AbstractMap    implements NavigableMap, Cloneable, java.io.Serializable//NavigableMap是个有序的map接口{    //使用compartor来排序key    private final Comparator

相关推荐

您需要登录后才可以回帖 登录 | 立即注册