java中Comparator接口,为什么o1.length()-o2.length()就是升序,o2.length() - o1.lengh()就是降序呢?

2025-03-13 11:55:52
推荐回答(1个)
回答1:

并不是因为o1.length() - o2.length() 就是升序,o2.length() - o1.lengh()就是降序,而是因为
你实现了用Comparator这个接口的时候,就有compare这个方法,JDK会在比较的时候自动调用这个方法,当该方法返回正数时,以第一个参数大于第二个,反之亦然。
这里只是用了2个String参数的长度来决定哪个比较大,你也可以自己来实现比较的逻辑。比如传入的2个参数的第一个字母比较之类的。javase的问题多看书。看帖子和问人得来的收获太小了。
建议啃完《thinking in java》