接上一篇接口回调的底层实现,此篇直接应用Java中已经定义好的排序,巩固理解。
需求:按老师年龄升序排序(接口回调)
//接口回调 老师按年龄升序排列
public class callback {
public static void main(String[] args) {
Teacher[] teachers=new Teacher[] {new Teacher("eric",30),new Teacher("abby",31),new Teacher("michael",29)};
java.util.Arrays.sort(teachers);
for (int i = 0; i < teachers.length; i++) {
System.out.println(teachers[i].name+" "+teachers[i].age);
}
}
}
class Teacher implements Comparable<Teacher>{
String name;
int age;
public Teacher(String name, int age) {
super();
this.name = name;
this.age = age;
}
@Override
public int compareTo(Teacher tea) {
if(this.age>tea.age) {
return 1;
}else if(this.age<tea.age) {
return -1;
}
return 0;
}
}
运行结果: