MENU

比较器 Comparator

August 6, 2018 • Read: 3527 • 算法 ,Java阅读设置

Comparator 接口

java 中有内置的排序,Arrays.sort (),现在我有一个 Student 类,类中三个成员变量 name,id,age,我现在想以 age 作为参考进行升序排序,应该如何做,很简单,只需要自己定义一个类实现 Comparator 接口即可

  • import java.util.*;
  • class Student {
  • String name;
  • int id,age;
  • Student(String name,int id,int age) {
  • this.name = name;
  • this.id = id;
  • this.age = age;
  • }
  • }
  • public class ComparetorTest {
  • public static class MyCompara implements Comparator<Student> {
  • public int compare(Student s1, Student s2) {
  • return s1.age - s2.age;
  • }
  • }
  • public static void main(String[] args) {
  • Student s1 = new Student("A",1,22);
  • Student s2 = new Student("B",3,23);
  • Student s3 = new Student("C",2,21);
  • Student[] student = new Student[] {s1,s2,s3};
  • Arrays.sort(student, new MyCompara());
  • for(int i = 0;i < student.length;i++)
  • System.out.println(student[i].name + " " + student[i].id + " " + student[i].age);
  • }
  • }
Last Modified: October 7, 2018
Archives Tip
QR Code for this page
Tipping QR Code
Leave a Comment