Java实现类排序

用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));
  }
 }

}

你可能感兴趣的:(java实现)