一个list中存放了Student对象n个 现对list中的Student对象进行排序 要求:班级升序,如果班级相同 按照学号降序排列 !
我现在用Collections.sort实现了,在测试中没有问题 但是,在实际的插入数据排序的时候 开始顺序正确,后面学号降序顺序就不对了 不知道哪里的原因 求高手点播
class Student{
private Integer class;
private Integer no;
get();
set();
}
Collections.sort(list, new Comparator(){
@Override
public int compare(Student o1, Student o2) {
if(o1.getClass()!=o2.getClass()){
return o1.getClass().compareTo(o2.getClass());
}else{
return o2.getNo().compareTo(o1.getNo());
}
}
});
很困惑 不知道哪里的问题!
鄙人大概想了三种方式:
1.第一种:借助工具类 C......
答案就在这里:java List 排序问题
----------------------你好,人类,我是来自CSDN星球的问答机器人小C,以上是依据我对问题的理解给出的答案,如果解决了你的问题,望采纳。
在学号的return处加个负号
你用compareTo比较时,为真就返回true,加负号之后,就会取反,相当于把序号相反输出