List.subList接口的用法

本文详细解释了JavaList接口的subList方法如何从原始列表中获取子列表,以及如何利用它进行分页操作,包括计算页数、确定起始和结束索引。subList方法返回的是视图,对子列表的修改会影响原始列表。
摘要由CSDN通过智能技术生成

subList 是 List 接口中的一个方法,用于获取原始列表中指定范围的子列表。它的作用是从原始列表中截取一部分元素,返回一个新的列表,该新列表包含了原始列表中指定范围的元素。

subList 方法的参数是起始索引和结束索引(不包含结束索引),表示要截取的子列表的范围。例如,subList(2, 5) 表示截取原始列表中索引从 2 到 4 的元素,返回一个包含这些元素的新列表。

使用 subList 方法可以方便地对列表进行分页操作。通常情况下,我们会先获取原始列表的总大小,然后根据每页的大小计算出总页数。然后,根据当前页码和每页大小计算出起始索引和结束索引,再使用 subList 方法截取出当前页的数据。

例如,假设有一个包含 10 个元素的列表 list,我们想要获取第 2 页的数据,每页大小为 3。首先,计算出总页数为 4。然后,根据当前页码和每页大小计算出起始索引为 3,结束索引为 6。最后,使用 subList 方法截取出索引从 3 到 5 的元素,即为第 2 页的数据。

List<String> list = Arrays.asList("A", "B", "C", "D", "E", "F", "G", "H", "I", "J");
int pageSize = 3;
int currentPage = 2;

int totalSize = list.size();
int totalPages = (int) Math.ceil((double) totalSize / pageSize);

int startIndex = (currentPage - 1) * pageSize;
int endIndex = Math.min(startIndex + pageSize, totalSize);

List<String> pageList = list.subList(startIndex, endIndex);

在上面的例子中,pageList 将包含索引从 3 到 5 的元素,即为 ["D", "E", "F"],这就是第 2 页的数据。注意,subList 方法返回的是原始列表的一个视图,对子列表的修改会影响到原始列表,同样,对原始列表的修改也会影响到子列表。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值