【问题标题】:How to filter the Arraylist using pageable object?如何使用可分页对象过滤 Arraylist?
【发布时间】:2021-01-04 13:26:40
【问题描述】:

公共类测试{

public static void main(String[] args) {

    List<String> nameList = new ArrayList<>();
    nameList.add("Harish");
    nameList.add("Ajith");
    nameList.add("Ramesh");
    nameList.add("Hari");
    nameList.add("Anto");
    nameList.add("john");
    nameList.add("bharath");
    nameList.add("kamal");
    nameList.add("Rajesh");

    System.out.println(nameList.size());
    Pageable pageable=  PageRequest.of(1,5);

}

我想根据可分页对象过滤姓名列表,每页 5 条记录。如果我的情况没有涉及 jpa 存储库。

【问题讨论】:

  • nameList.stream().limit(pageable.getPageSize()).collect(Collectors.toList());

标签: java spring java-8 spring-data java-stream


【解决方案1】:

你可以使用

选项 1:手动计算页面大小

return nameList.subList(2, 4);

选项2:返回列表的连续子列表,每个子列表大小相同(最终列表可能更小)

参数: list – 返回连续子列表的列表 size - 每个子列表的所需大小(最后一个可能更小)

 Lists.partition(nameList, 5)

https://docs.oracle.com/javase/8/docs/api/java/util/List.html

【讨论】:

  • 我使用了 sublist 函数来完成这项工作
猜你喜欢
  • 2013-05-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-21
  • 2020-09-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多