前言
全文扫了一眼TreeSet,就像HashSet复用了HashMap一样,TreeSet也基本完全复用了TreeMap,对于TreeMap可以看我的TreeMap的分析
TreeMap源码分析
这里我们就简单的分析一下TreeSet
官方解释
基于 TreeMap 的 NavigableSet 实现。使用元素的自然顺序对元素进行排序,或者根据创建 set 时提供的 Comparator 进行排序,具体取决于使用的构造方法。
此实现为基本操作(add、remove 和 contains)提供受保证的 log(n) 时间开销。
注意,此实现不是同步的。如果多个线程同时访问一个 TreeSet,而其中至少一个线程修改了该 set,那么它必须 外部同步。
TreeSet定义
public class TreeSet<E> extends AbstractSet<E