【发布时间】:2021-10-04 16:03:51
【问题描述】:
我看到this 发布了关于使用 lambda 反转顺序的帖子,但即使使用传统的 Comparator 实现(或匿名内部类)也让我感到困惑的是:为什么将第二个参数与第一个参数进行比较会反转顺序?
例如:
public int compare(Integer o1, Integer o2) {
return o2.compareTo(o1);
}
在上面的sn-p中,整数会被倒序排列。但是,o1.compareTo(o2) 会产生正常顺序。为什么切换比较顺序会起作用,为什么这会扩展到其他自定义比较器?
【问题讨论】:
-
a < b和b < a有什么区别?你在颠倒顺序。这就是它的作用。 -
但不知道
a > b,没有区别。 -
b < a是a > b的同义词。
标签: java comparator