comparator降序排序相关

来源:3-3 案例:对宠物猫按名字进行排序

秋凉凉

2020-05-19 20:13:26

可不可以这样:

int n= name1.compareTo(name2);
return -n;

如果不可以,为啥?返回-n跟交换name1、name2之间的位置起到的效果不是一样的吗?

写回答

1回答

好帮手慕阿园

2020-05-20

同学你好,将返回值取反可以实现降序排序。

name1.compareTo(name2)返回n,表示如果两个字符串的比较结果大于0,就把前一个自字符串和后一个字符串交换,也就是把大的字符串放后面了,即所谓的升序了!

如果对返回值取反的话就是两个字符串结果小于0,就把前一个自字符串和后一个字符串交换,也就是把小的字符串放后面了,就成了降序了

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!


1

0 学习 · 16556 问题

查看课程