import java.util.*;
public class Main {
public static void main(String[] args) {
List<Student> students = new ArrayList<>(Arrays.asList(
new Student("Иван", 19, 4.2),
new Student("Александра", 18, 4.8),
new Student("Петр", 21, 3.9),
new Student("Мария", 20, 4.5),
new Student("Константин", 22, 3.5)
));
// 1. По среднему баллу (по возрастанию)
students.sort((a, b) -> Double.compare(a.getAvg(), b.getAvg()));
System.out.println("По среднему баллу:");
students.forEach(s -> System.out.println(s));
// 2. По длине имени (по убыванию)
students.sort((a, b) -> b.getName().length() - a.getName().length());
System.out.println("\nПо длине имени:");
students.forEach(s -> System.out.println(s));
// 3. По возрасту (по убыванию)
students.sort((a, b) -> b.getAge() - a.getAge());
System.out.println("\nПо возрасту:");
students.forEach(s -> System.out.println(s));
}
}
class Student {
private String name;
private int age;
private double avg;
public Student(String name, int age, double avg) {
this.name = name;
this.age = age;
this.avg = avg;
}
public String getName() { return name; }
public int getAge() { return age; }
public double getAvg() { return avg; }
@Override
public String toString() {
return name + ", " + age + " лет, ср. балл " + avg;
}
}