关于比较器的问题

来源:5-5 关于TreeSet的使用

hxcchan

2020-07-29 03:16:37

老师,返回o1-o2一定是升序排列吗?不太理解这种写法的意思。

写回答

1回答

好帮手慕阿园

2020-07-29

同学你好,这种写法是根据返回值来决定升降序

第一个参数小于、等于或大于第二个参数分别返回负整数、零或正整数。

升降序是根据底层实现完成的。在进行排序时,如果两个数比较结果大于0,就把前一个数和后一个数交换,也就是把大的数放后面了,即所谓的升序了。

如果第二个参数与第一个参数调换顺序,也就是降序了。简单理解,就是小于0就是左边参数小,大于0就是右边参数小。

比如:

a = 5

b= 3

a比b大返回值大于0 ,所以a,b互换,3在前面,5在后面,形成了升序

调换顺序,b比a小,返回值小于0,所以不换, 那 a =5 ,b=3就是降序

祝学习愉快


0

0 学习 · 16556 问题

查看课程