java 8对集合进行排序、分页

排序

下面代码以自然序排序一个list
list.stream().sorted()

自然序逆序元素,使用Comparator 提供的reverseOrder() 方法
list.stream().sorted(Comparator.reverseOrder())

使用Comparator 来排序一个list
list.stream().sorted(Comparator.comparing(Student::getAge))

把上面的元素逆序
list.stream().sorted(Comparator.comparing(Student::getAge).reversed())

当然还可以不用借助steam方式直接排序:
list.sort(Comparator.comparing(Integer::intValue));

list.sort(Comparator.comparing(Integer::intValue).reversed());

list.sort(Comparator.comparing(Student::getAge));

list.sort(Comparator.comparing(Student::getAge).reversed());

分页

list.stream().sorted(comparator).skip((pageNumber-1+1)* pageSize).limit(pageSize).collect(Collectors.toList())
这里说明一下,这里使用的是正序排列,如果是倒序排列,sorted(comparator.reversed())
pageNumber就是显示第几页,pageSize就是一页显示几条,这样数据就可以根据需求取出,不用再考虑页数问题导致的空数据,还要再去加判断条件去开发这个需求了。
java 8对集合进行排序、分页_第1张图片
skip( int current) ,current 为页码

你可能感兴趣的:(备忘)