Comparable接口的使用:(知识回顾)
1、定义一个学生类,具有年龄age和姓名username两个属性,并通过Comparable接口提供比较规则。
package demo02.sort;
public class Student implements Comparable<Student>{private String username;private int age;public String getUsername() {return username;}public int getAge() {return age;}public void setUsername(String username) {this.username = username;}public void setAge(int age) {this.age = age;}@Overridepublic String toString() {return "Student{" +"username='" + username + '\'' +", age=" + age +'}';}@Overridepublic int compareTo(Student o) {return this.getAge()-o.getAge();}
}
2、定义测试类TestComparable,在测试类Test中定义测试方法Comparable getMax(comparable c1,comparable c2)完成测试
package demo02.test;
import demo02.sort.Student;
public class TestComparable {public static void main(String[] args) {Student s1 = new Student();s1.setUsername("张三");s1.setAge(18);Student s2 = new Student();s2.setUsername("李四");s2.setAge(20);Comparable max = getMax(s1, s2);System.out.println(max);}public static Comparable getMax(Comparable c1, Comparable c2) {int result = c1.compareTo(c2);//如果result>0,则c1比c2大,如果result<0,则c2比c1大如果result=0,则c1==c2大if (result >= 0) {return c1;} else {return c2;}}
}
运行结果: