用Java实现类排序 如下步骤:
1 待排序的类实现 Comparable 接口
2 重写compareTo 方法
3 Collections.sort(listStu); 实现排序
代码如下:
public class Student implements {
private int id;
private String name;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int compareTo(Object arg0) {
Student student1 = (Student) arg0;
// 按名字排序27
if(student1.id>this.id){
return -1;
}else if(student1.id<this.id){
return 1;
}else{
return 0;
}
}
public String toString(){
String reStr = "";
reStr += "id=" + id + " ";
reStr += "name=" + name + " ";
return reStr;
}
}
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class TestClass {
public static void main(String[] args){
List listStu = new ArrayList();
Student stu0 = new Student();
stu0.setId(32);
listStu.add(stu0);
Student stu1 = new Student();
stu1.setId(12);
listStu.add(stu1);
Student stu2 = new Student();
stu2.setId(52);
listStu.add(stu2);
Student stu3 = new Student();
stu3.setId(65);
listStu.add(stu3);
Student stu4 = new Student();
stu4.setId(21);
listStu.add(stu4);
Student stu5 = new Student();
stu5.setId(35);
listStu.add(stu5);
Student stu6 = new Student();
stu6.setId(123);
listStu.add(stu6);
Student stu7 = new Student();
stu7.setId(78);
listStu.add(stu7);
Student stu8 = new Student();
stu8.setId(96);
listStu.add(stu8);
Student stu9 = new Student();
stu9.setId(75);
listStu.add(stu9);
Collections.sort(listStu);
printList(listStu);
}
public static void printList(List list){
if(list == null || list.size()==0){
System.out.println("list is null");
}
for(int i=0; i<list.size(); i++){
System.out.println(list.get(i));
}
}
}