TreeSet对String是可排序的
- TreeSet集合底层实际上是一个TreeMap
- TreeMap集合底层是一个二叉树
- 放到TreeSet集合里的元素,等同于放到了TreeMap集合的Key部分
- TreeSet集合中的元素:无序不可重复,但是可以按照元素大小自动排序,即可排序集合。
TreeSet集合放进去,再拿出来就是有顺序的
自定义类型需要去实现Comparable
第二种排序的底层实现
利用比较器
Comparable是java.lang包下的,Comparator是util包下的
通过TreeSet
Comparable和Comparator如何选择
当比较规则不会发生改变,或者说比较规则只有一个的时候,建议实现comparable接口
如果比较规则有多个,并且需要多个比较规则之间频繁切换时,建议使用comparator接口
Comparator接口的设计符合OCP原则
浙公网安备 33010602011771号