当前位置 : 主页 > 编程语言 > java >

Java使用Collections工具类对List集合进行排序

来源:互联网 收集:自由互联 发布时间:2021-05-13
这篇文章主要介绍了Java使用Collections工具类对List集合进行排序,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一、说明 使

这篇文章主要介绍了Java使用Collections工具类对List集合进行排序,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

一、说明

使用Collections工具类的sort方法对list进行排序

新建比较器Comparator

二、代码

排序:

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;

public class Test {

  public static void main(String[] args) {

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

    //创建3个学生对象,年龄分别是20、19、21,并将他们依次放入List中
    Student s1 = new Student();
    s1.setAge(20);
    Student s2 = new Student();
    s2.setAge(19);
    Student s3 = new Student();
    s3.setAge(21);
    list.add(s1);
    list.add(s2);
    list.add(s3);

    System.out.println("排序前:"+list);

    Collections.sort(list, new Comparator<Student>(){

      /*
       * int compare(Student o1, Student o2) 返回一个基本类型的整型,
       * 返回负数表示:o1 小于o2,
       * 返回0 表示:o1和o2相等,
       * 返回正数表示:o1大于o2。
       */
      public int compare(Student o1, Student o2) {

        //按照学生的年龄进行升序排列
        if(o1.getAge() > o2.getAge()){
          return 1;
        }
        if(o1.getAge() == o2.getAge()){
          return 0;
        }
        return -1;
      }
    }); 
    System.out.println("排序后:"+list);
  }
}

Student类:

class Student{
  private int age;
  public int getAge() {
    return age;
  }
  public void setAge(int age) {
    this.age = age;
  }
  @Override
  public String toString() {
    return getAge()+"";
  }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自由互联。

网友评论