list拆分为多个list
时间: 2023-09-14 12:10:26 浏览: 371
要将一个List拆分成多个List,可以使用Java 8中的Stream API的链式调用来实现。具体步骤如下:
1. 创建一个List集合,并添加需要拆分的元素。
2. 计算需要拆分的次数,可以通过list.size()除以每个小的List包含的元素数量来得到。如果除法的余数为0,则拆分的次数为list.size()/30,否则拆分的次数为list.size()/30+1。
3. 使用for循环,从原始List集合中跳过前30 * i个元素,然后取出后面的30个元素,并将这30个元素放到一个新的List集合中。
4. 将每次拆分得到的小的List集合添加到一个新的List集合中,以便保存所有拆分后的小的List集合。
示例代码如下:
```
List<List<ExchangeRateData>> listMaps = new ArrayList<>(); // 创建一个新的List集合保存拆分后的小的List集合
for (int i = 0; i < page; i++) {
listMaps.add(exchangeRateDataList.stream().skip(30 * i).limit(30).collect(Collectors.toList()));
}
```
这样,原始的List集合就被拆分成了多个包含30个元素的小的List集合,并保存在listMaps中。每个小的List集合都可以通过索引来访问。
引用中的代码展示了如何计算需要拆分的次数,以及如何使用Stream API的skip和limit方法来实现拆分操作。引用提供了关于Java实现List拆分的参考资料。<span class="em">1</span><span class="em">2</span>
#### 引用[.reference_title]
- *1* [List集合拆分为多个list集合的方法](https://blog.csdn.net/lyy521yibeizi/article/details/130988273)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* [java实现把一个List集合拆分成多个的操作](https://download.csdn.net/download/weixin_38722607/12821053)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文