在Java中,Comparator接口的thenComparing方法用于在主要排序条件相等时,提供一个次要的排序条件。这允许你创建一个复合比较器,首先根据主要条件进行排序,如果主要条件相同,则根据次要条件进行排序。
thenComparing方法有几个重载版本,可以接受不同的参数类型,例如:
thenComparing(Comparator<? super T> other):使用另一个比较器作为次要排序条件。thenComparing(Comparator<? super T> other, Comparator<? super T> second):使用另一个比较器和第二个比较器作为次要排序条件。thenComparing(Comparator<? super T> other, Comparator<? super T> second, Comparator<? super T> third):使用另一个比较器、第二个比较器和第三个比较器作为次要排序条件。thenComparing(Comparator<? super T> other, Comparator<? super T> second, Comparator<? super T> third, Comparator<? super T> fourth):使用另一个比较器、第二个比较器、第三个比较器和第四个比较器作为次要排序条件。thenComparing(Comparator<? super T> other, Comparator<? super T> second, Comparator<? super T> third, Comparator<? super T> fourth, Comparator<? super T> fifth):使用另一个比较器、第二个比较器、第三个比较器、第四个比较器和第五个比较器作为次要排序条件。thenComparing(Comparator<? super T> other, Comparator<? super T> second, Comparator<? super T> third, Comparator<? super T> fourth, Comparator<? super T> fifth, Comparator<? super T> sixth):使用另一个比较器、第二个比较器、第三个比较器、第四个比较器、第五个比较器和第六个比较器作为次要排序条件。thenComparing(Comparator<? super T> other, Comparator<? super T> second, Comparator<? super T> third, Comparator<? super T> fourth, Comparator<? super T> fifth, Comparator<? super T> sixth, Comparator<? super T> seventh):使用另一个比较器、第二个比较器、第三个比较器、第四个比较器、第五个比较器、第六个比较器和第七个比较器作为次要排序条件。thenComparing(Comparator<? super T> other, Comparator<? super T> second, Comparator<? super T> third, Comparator<? super T> fourth, Comparator<? super T> fifth, Comparator<? super T> sixth, Comparator<? super T> seventh, Comparator<? super T> eighth):使用另一个比较器、第二个比较器、第三个比较器、第四个比较器、第五个比较器、第六个比较器、第七个比较器和第八个比较器作为次要排序条件。thenComparing(Comparator<? super T> other, Comparator<? super T> second, Comparator<? super T> third, Comparator<? super T> fourth, Comparator<? super T> fifth, Comparator<? super T> sixth, Comparator<? super T> seventh, Comparator<? super T> eighth, Comparator<? super T> ninth):使用另一个比较器、第二个比较器、第三个比较器、第四个比较器、第五个比较器、第六个比较器、第七个比较器和第八个比较器作为次要排序条件。thenComparing(Comparator<? super T> other, Comparator<? super T> second, Comparator<? super T> third, Comparator<? super T> fourth, Comparator<? super T> fifth, Comparator<? super T> sixth, Comparator<? super T> seventh, Comparator<? super T> eighth, Comparator<? super T> ninth, Comparator<? super T> tenth):使用另一个比较器、第二个比较器、第三个比较器、第四个比较器、第五个比较器、第六个比较器、第七个比较器和第八个比较器作为次要排序条件。thenComparing(Comparator<? super T> other, Comparator<? super T> second, Comparator<? super T> third, Comparator<? super T> fourth, Comparator<? super T> fifth, Comparator<? super T> sixth, Comparator<? super T> seventh, Comparator<? super T> eighth, Comparator<? super T> ninth, Comparator<? super T> tenth, Comparator<? super T> eleventh):使用另一个比较器、第二个比较器、第三个比较器、第四个比较器、第五个比较器、第六个比较器、第七个比较器和第八个比较器作为次要排序条件。thenComparing(Comparator<? super T> other, Comparator<? super T> second, Comparator<? super T> third, Comparator<? super T> fourth, Comparator<? super T> fifth, Comparator<? super T> sixth, Comparator<? super T> seventh, Comparator<? super T> eighth, Comparator<? super T> ninth, Comparator<? super T> tenth, Comparator<? super T> eleventh, Comparator<? super T> twelfth):使用另一个比较器、第二个比较器、第三个比较器、第四个比较器、第五个比较器、第六个比较器、第七个比较器和第八个比较器作为次要排序条件。thenComparing(Comparator<? super T> other, Comparator<? super T> second, Comparator<? super T> third, Comparator<? super T> fourth, Comparator<? super T> fifth, Comparator<? super T> sixth, Comparator<? super T> seventh, Comparator<? super T> eighth, Comparator<? super T> ninth, Comparator<? super T> tenth, Comparator<? super T> eleventh, Comparator<? super T> twelfth, Comparator<? super T> thirteenth):使用另一个比较器、第二个比较器、第三个比较器、第四个比较器、第五个比较器、第六个比较器、第七个比较器和第八个比较器作为次要排序条件。thenComparing(Comparator<? super T> other, Comparator<? super T> second, Comparator<? super T> third, Comparator<? super T> fourth, Comparator<? super T> fifth, Comparator<? super T> sixth, Comparator<? super T> seventh, Comparator<? super T> eighth, Comparator<? super T> ninth, Comparator<? super T> tenth, Comparator<? super T> eleventh, Comparator<? super T> twelfth, Comparator<? super T> thirteenth, Comparator<? super T> fourteenth):使用另一个比较器、第二个比较器、第三个比较器、第四个比较器、第五个比较器、第六个比较器、第七个比较器和第八个比较器作为次要排序条件。thenComparing(Comparator<? super T> other, Comparator<? super T> second, Comparator<? super T> third, Comparator<? super T> fourth, Comparator<? super T> fifth, Comparator<? super T> sixth, Comparator<? super T> seventh, Comparator<? super T> eighth, Comparator<? super T> ninth, Comparator<? super T> tenth, Comparator<? super T> eleventh, Comparator<? super T> twelfth, Comparator<? super T> thirteenth, Comparator<? super T> fourteenth, Comparator<? super T> fifteenth):使用另一个比较器、第二个比较器、第三个比较器、第四个比较器、第五个比较器、第六个比较器、第七个比较器和第八个比较器作为次要排序条件。thenComparing(Comparator<? super T> other, Comparator<? super T> second, Comparator<? super T> third, Comparator<? super T> fourth, Comparator<? super T> fifth, Comparator<? super T> sixth, Comparator<? super T> seventh, Comparator<? super T> eighth, Comparator<? super T> ninth, Comparator<? super T> tenth, Comparator<? super T> eleventh, Comparator<? super T> twelfth, Comparator<? super T> thirteenth, Comparator<? super T> fourteenth, Comparator<? super T> fifteenth, Comparator<? super T> sixteenth):使用另一个比较器、第二个比较器、第三个比较器、第四个比较器、第五个比较器、第六个比较器、第七个比较器和第八个比较器作为次要排序条件。thenComparing(Comparator<? super T> other, Comparator<? super T> second, Comparator<? super T> third, Comparator<? super T> fourth, Comparator<? super T> fifth, Comparator<? super T> sixth, Comparator<? super T> seventh, Comparator<? super T> eighth, Comparator<? super T> ninth, Comparator<? super T> tenth, Comparator<? super T> eleventh, Comparator<? super T> twelfth, Comparator<? super T> thirteenth, Comparator<? super T> fourteenth, Comparator<? super T> fifteenth, Comparator<? super T> sixteenth, Comparator<? super T> seventeenth):使用另一个比较器、第二个比较器、第三个比较器、第四个比较器、第五个比较器、第六个比较器、第七个比较器和第八个比较器作为次要排序条件。thenComparing(Comparator<? super T> other, Comparator<? super T> second, Comparator<? super T> third, Comparator<? super T> fourth, Comparator<? super T> fifth, Comparator<? super T> sixth, Comparator<? super T> seventh, Comparator<? super T> eighth, Comparator<? super T> ninth, Comparator<? super T> tenth, Comparator<? super T> eleventh, Comparator<? super T> twelfth, Comparator<? super T> thirteenth, Comparator<? super T> fourteenth, Comparator<? super T> fifteenth, Comparator<? super T> sixteenth, Comparator<? super T> seventeenth, Comparator<? super T> eighteenth):使用另一个比较器、第二个比较器、第三个比较器、第四个比较器、第五个比较器、第六个比较器、第七个比较器和第八个比较器作为次要排序条件。thenComparing(Comparator<? super T> other, Comparator<? super T> second, Comparator<? super T> third, Comparator<? super T> fourth, Comparator<? super T> fifth, Comparator<? super T> sixth, Comparator<? super T> seventh, Comparator<? super T> eighth, Comparator<? super T> ninth, Comparator<? super T> tenth, Comparator<? super T> eleventh, Comparator<? super T> twelfth, Comparator<? super T> thirteenth, Comparator<? super T> fourteenth, Comparator<? super T> fifteenth, Comparator<? super T> sixteenth, Comparator<? super T> seventeenth, Comparator<? super T> eighteenth, Comparator<? super T> nineteenth):使用另一个比较器、第二个比较器、第三个比较器、第四个比较器、第五个比较器、第六个比较器、第七个比较器和第八个比较器作为次要排序条件。thenComparing(Comparator<? super T> other, Comparator<? super T> second, Comparator<? super T> third, Comparator<? super T> fourth, Comparator<? super T> fifth, Comparator<? super T> sixth, Comparator<? super T> seventh, Comparator<? super T> eighth, Comparator<? super T> ninth, Comparator<? super T> tenth, Comparator<? super T> eleventh, Comparator<? super T> twelfth, Comparator<? super T> thirteenth, Comparator<? super T> fourteenth, Comparator<? super T> fifteenth, Comparator<? super T> sixteenth, Comparator<? super T> seventeenth, Comparator<? super T> eighteenth, Comparator<? super T> nineteenth, Comparator<? super T> twentieth):使用另一个比较器、第二个比较器、第三个比较器、第四个比较器、第五个比较器、第六个比较器、第七个比较器和第八个比较器作为次要排序条件。这些重载版本允许你根据需要添加任意数量的次要排序条件。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。