comparable接口 是主要是用来自定义类存储在主要是TreeSet,TreeMap(键)集合中存储时,自定通过实现这种接口得到自然排序的功能。
comparator 接口 是主要是用来自定义类存储在主要是TreeSet,TreeMap(键)集合中存储时,自定通过实现这种接口得到自定义排序的功能。
区别:
1 comparable在lang包 comparator 在util包
2.实现comparable要重写compareTo方法 comparator要重新compare方法
3.comparable是实体类来实现的(要保存对象的类中),
comparator 要单独放一个类中,在treeset,treemap,构造方法使用,在list集合中sort方法中,在hashset ,hashmap不可以使用
4.同时使用时自定义的排序优先级高于自然排序优先级 comparable<comparator 的区别