1.这里我们对学生类做一个简单的排序
1.1学生类代码
public class Student {
private String name;
private Integer age;
public Student(String name, Integer age, ) {
this.name = name;
this.age = age;
}
public Student() {
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
@Override
public String toString() {
return "Student{" +
"name='" + name + '\'' +
", age=" + age
'}';
}}
测试类代码
package com.sxt.home5;
import java.text.Collator;
import java.util.*;
/*
8. 键盘录入5个学生信息并且存储到集合中(姓名,年龄),按照总分从低到高输出到控制台
public class TestScore {
public static void main(String[] args) {
List<Student> list = new ArrayList<>();
Student s2 = new Student("小绿", 19);
Student s3 = new Student("小白", 18);
Student s4 = new Student("李紫", 20);
Student s5 = new Student("小紫", 17);
Student s1 = new Student("李黑", 200);
list.add(s1);
list.add(s2);
list.add(s3);
list.add(s4);
list.add(s5);
System.out.println("排序前:");
for (Student s : list) {
System.out.println(s);
}
Collections.sort(list, new Comparator<Student>() {
@Override
public int compare(Student o1, Student o2) {
return o1.getAge()-(o2.getAge()););
}
});
System.out.println("排序后:");
for (Student s : list) {
System.out.println(s);
}
//此时这个比较器就帮我们做好了升序排序,输出打印一下可以看到,学生按照年龄从大到小排序的
/**
* 升序排的话就是第一个参数减(第二个参数);
* 降序排的话就是第二个参数减(第一个参数);
*/
}
}