为什么在java中有两个可比较的接口和比较器用于对集合进行排序?

时间:2016-06-22 05:11:19

标签: java collections

为什么在java中有两个可比较的接口和比较器用于对集合进行排序?

看起来两个人正在做同样的任务......对这种排序技术的困惑?请指教

1 个答案:

答案 0 :(得分:0)

有人可能希望以其他方式对给定对象进行排序,然后在给定对象中定义它(使用Comparable),这就是Comparator可用的原因。

Comparable - 在给定的类中用于定义默认 / 自然排序排序

Comparator - 由外部代码(例如来自不同的库)用于以不同方式对数据进行排序,或者向未定义Comparable的类添加排序,或添加不同的排序顺序(例如,有时您可能希望排序字符串不区分大小写,有时区分大小写)。