您的位置:首页 > 编程语言 > Java开发

Java对List中的对象进行排序

2015-06-18 11:37 435 查看
根据Collections.sort重载方法来实现

1. 根据学号对学生进行排队

public class Student {

private String name;
private double id;
//构造函数
public Student() {}

public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public double getId() {
return id;
}
public void setId(double id) {
this.id = id;
}
}







1. 先定义ValComparator类

public class ValComparator implements Comparator<Student> {

public int compare(Student o1, Student o2) {

double id1 = o1.getId();
double id2 = o2.getId();

//升序排列,如果需要降序,把1和-1调换位置
if( id1 < id2){
return -1;
}else if( id1 > id2){
return 1;
}else{
return 0;
}

}
}




2. 主程序

public class Test{
public static void main(String[] args) {

Student o1 = new Student();
o1.setName("a");
o1.setId(2014001);

Student o2 = new Student();
o2.setName("b");
o2.setId(2014002);

Student o3 = new Student();
o3.setName("c");
o3.setId(2014003);

List <Student> list = new ArrayList<Student>();
list.add(o2);
list.add(o3);
list.add(o1);

ValComparator comparator = new ValComparator();
Collections.sort(list, comparator);

for(Student u : list){
System.out.println(u.getName());
}
}
}





                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java 排序