Advertisement

TreeSet在Java集合框架中的源码分析

阅读量:

文章目录

  • 一、TreeSet特性
  • 二、TreeSet底层存储结构
  • 三、TreeSet方法
  • 四、TreeSet使用

一、TreeSet特性

特性 描述
是否允许为null 允许
是否允许重复 不允许
是否有序 有序,插入和取出的顺序一致
是否线程安全 线程安全

属于 Java 集合框架的一部分,并遵循了 Set 接口并提供了一个有序集合。其存储的元素具有唯一性(无重复)。与 HashSet 不同之处在于,在于其元素按自然顺序排列(若实现了 Comparable 接口),或可自定义排序(通过指定 Comparator 实现)。

二、TreeSet底层存储结构

底层存储结构使用了TreeMap,底层的数据结构是红黑树(平衡二叉树)。

复制代码
    public boolean add(E var1) {
        return this.m.put(var1, PRESENT) == null;
    }

三、TreeSet方法

四、TreeSet使用

  • 在不提供参数的情况下,默认使用的TreeSet构造函数会生成一个未排序的数据集合。
    • 若要实现元素有序存储,则应选择带有排序功能的构造器。
复制代码
    public TreeSe

全部评论 (0)

还没有任何评论哟~