详解JAVA使用Comparator接口实现自定义排序
1、原则
Comparator接口可以实现自定义排序,实现Comparator接口时,要重写compare方法:
intcompare(Objecto1,Objecto2)返回一个基本类型的整型
如果要按照升序排序,则o1小于o2,返回-1(负数),相等返回0,01大于02返回1(正数)
如果要按照降序排序,则o1小于o2,返回1(正数),相等返回0,01大于02返回-1(负数)
importjava.util.ArrayList; importjava.util.Comparator; importjava.util.List; publicclassUserComparatorimplementsComparator{ publicstaticvoidmain(String[]args){ List users=newArrayList (); users.add(newUser(10,"a")); users.add(newUser(11,"d")); users.add(newUser(15,"s")); users.add(newUser(6,"x")); users.add(newUser(17,"a")); users.add(newUser(17,"b")); users.add(newUser(17,"c")); users.add(newUser(17,"d")); UserComparatorcomparator=newUserComparator(); users.sort(comparator); //也可以使用:Collections.sort(users,comparator); for(Useru:users){ System.out.println(u); } } @Override publicintcompare(Useru1,Useru2){ if(u1.equals(u2)){ return0; } elseif(u1.getAge() User[age=17,name=a] User[age=17,name=b] User[age=17,name=c] User[age=17,name=d] User[age=15,name=s] User[age=11,name=d] User[age=10,name=a] User[age=6,name=x]以上所述是小编给大家介绍的JAVA使用Comparator接口实现自定义排序详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!