@Test
void testSort() {
ArrayList<User> users = new ArrayList<>();
users.add(new User("huangqg", 50000));
users.add(new User("songyc", 35000));
users.add( new User("hanxu", 42000));
// core
users.sort((User u1, User u2) -> u2.getSalary() - u1.getSalary());
System.out.println(users);
// [User{name='huangqg', salary=50000}, User{name='hanxu', salary=42000}, User{name='songyc', salary=35000}]
}
class User {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getSalary() {
return salary;
}
public void setSalary(int salary) {
this.salary = salary;
}
private int salary;
public User(String name, int salary) {
this.name = name;
this.salary = salary;
}
@Override
public String toString() {
return "User{" +
"name='" + name + '\'' +
", salary=" + salary +
'}';
}
}