针对list集合排序

//创建一个pojo实体类

class Student{

     private String name;


     private int score;


     public Student(){}


     public Student(String name,int score){

       this. name=name;

       this.score=score;

     }

    public String getScore() {
          return score;
     }
     public void setScore(String score) {
          this.score= score;
    }
    public String getName() {
         return name;
    }
    public void setName(String name) {
        this.name = name;
  }

}


//具体的实体排序类 实现Comparator接口

import java.util.Comparator

class SortStudent implements Comparator<Student>{

   @override

   public int compare(Student o1, Student o2) {

       //第一种方法

        Double score1=o1.getScore();
        Double score2=o2.getScore();
        return score1.compareTo(score2);

      //第二种方法

        Double score1=o1.getScore();
        Double score2=o2.getScore();
        if(score1>score2){

           return 1;

        }else{

          return 0;

       }

    }

}



//具体实现

import java.util.*;

class StudentText{

    public static void main(String[] args){

           List<Student> students=new ArrayList<Student>();

           Student s1=new Student("张三",90);

           Student s2=new Student("李四",100);

           Student s3=new Student("王五",80);

            students.add(s1);

            students.add(s2);

            students.add(s3);

            //根据student对象的属性score 进行升序排序

            Collections.sort(students,new SortStudent ());

            for(int i=0;i<students.size();i++){

                 System.out.println(students[i].getName()+","+students[i].getScore()+“\t”);

            }

    }

}


输出结果为:

王五,80  

张三,90 

李四,100

猜你喜欢

转载自blog.csdn.net/chenrisheng1/article/details/25322721