list stream按照对象多个属性进行排序

/**
*  按照年龄正序
*/
personList.stream().sorted(Comparator.comparing(Person::getAge)).collect(Collectors.toList());

/**
*  按照年龄倒序 reversed()
*/
 personList.stream().sorted(Comparator.comparing(Person::getAge).reversed()).collect(Collectors.toList());

/**
* 如果需要多条件排序,thenComparing(),对于排序完的结果还可以接着操作
*先按照年龄排序,再按照名称排序
*/
List<Person> collect = personList.stream()
.sorted(Comparator.comparing(Person::getAge).thenComparing(Comparator.comparing(Person::getName)))
.collect(Collectors.toList());

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章