聊一聊TreeSet的特点吧~(以下都是基于jdk1.8)
继承树 |
TreeSet的继承树如下图:
特点 |
(1)底层使用TreeMap来保存所有元素
(2)线程不安全。可通过如下方式使用线程安全的操作:
SortedSet s = Collections.synchronizedSortedSet(new TreeSet(...));
(3)能够确保集合元素处于排序状态,依赖于comparator。因此,当试图将一个对象添加到集合中时,该对象必须实现Comparable接口
(4)不允许null值。
(5)底层使用红黑树数据结构。
(6)fail-fast机制。