# 简单排序

Java提供了一个接口Comparable(lang包下的)就是用来定义排序规则的,在这里我们以案例的形式对Comparable接口做一个简单的回顾。

# 需求

  1. 定义一个学生类Student,具有年龄age和姓名username两个属性,并通过Comparable接口提供比较规则;
  2. 定义测试类Test,在测试类Test中定义测试方法Comparable getMax(Comparable c1,Comparable c2)完成测试

# 学生类


import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@AllArgsConstructor
@NoArgsConstructor
public class Student implements Comparable<Student> {

    private String name;
    private int age;

    @Override
    public int compareTo(Student o) {
        return this.getAge() - o.getAge();
    }

}

# 测试类

public class SimpleCompare {
    public static void main(String[] args) {
        Student zs = new Student("张三", 18);
        Student lisi = new Student("李四", 20);
        System.out.println(getMax(zs, lisi));//张三
    }

    private static <T> Comparable<T> getMax(Comparable a, Comparable b) {
        return a.compareTo(b) >= 0 ? a : b;
    }

}