【发布时间】:2016-04-03 19:44:11
【问题描述】:
根据由 指定的比较器。列表中的所有元素必须相互 使用指定的比较器进行比较(即 c.compare(e1, e2) 不能为任何元素 e1 和 e2 抛出 ClassCastException 列表)。
为什么不指定对象是升序还是降序排序?在Comparator 接口中,compare 方法告诉obj1 何时大于等于或小于obj2。而已。文档没有说明列表是否按升序排序。我自己检查过,是的,它正在上升。
【问题讨论】:
-
升序或降序没有意义。它根据比较器进行排序。因此比较器可以升序或降序排序,但这取决于比较器。不是排序逻辑。
-
@Tunaki Comparator 的比较方法定义了对象何时变大或变小。 sort 方法按升序排序,通过查看比较器来判断升序的含义。但是文档没有提到顺序是升序的。
标签: java sorting collections