import java.util.Arrays; import java.util.Comparator; public final class StudentSortExample { static final class Student { final String name; final int score; Student(String name, int score) { this.name = name; this.score = score; } @Override public String toString() { return name + ":" + score; } } public static void main(String[] args) { Student[] students = { new Student("An", 7), new Student("Binh", 3), new Student("Chi", 5), new Student("Dung", 3), new Student("Em", 9), new Student("Phuc", 1) }; Arrays.sort(students, Comparator.comparingInt(s -> s.score)); if (!students[1].name.equals("Binh") || !students[2].name.equals("Dung")) { throw new AssertionError("Equal-score order changed"); } System.out.println(Arrays.toString(students)); } }