1. 改变原list集合
class NrscDemoApplicationTests {
@Data
@AllArgsConstructor
@NoArgsConstructor
static class Human {
private String name;
private int age;
}
@Test
void changeOriginalList() {
List<Human> humans = Lists.newArrayList(
new Human("yoyo", 12),
new Human("yoki", 12),
new Human("nrsc", 10),
new Human("nrfx", 10));
humans.sort(Comparator.comparing(Human::getAge).thenComparing(Human::getName));
System.out.println(humans);
}
}

2. 不改变原list集合
class NrscDemoApplicationTests {
@Data
@AllArgsConstructor
@NoArgsConstructor
static class Human {
private String name;
private int age;
}
@Test
void changeOriginalList() {
List<Human> humans = Lists.newArrayList(
new Human("yoyo", 12),
new Human("yoki", 12),
new Human("nrsc", 10),
new Human("nrfx", 10));
List<Human> collect = humans.stream()
.sorted(Comparator.comparing(Human::getAge).thenComparing(Human::getName))
.collect(Collectors.toList());
System.err.println(humans);
System.out.println(collect);
}
}
