關于Lists.partition集合分組使用以及注意事項
更新時間:2024年01月04日 15:29:17 作者:liuhuapeng0304
這篇文章主要介紹了關于Lists.partition集合分組使用以及注意事項,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
1.介紹
Lists.partition是com.google.common.collect包下的一個方法。
作用是將目標集合按照傳入的size分組。
2.使用場景
一般用于固定大小的集合處理
比如:
我有兩百個商品類型,要求前一百個一種處理方式,后一百個一種處理方式。
3.用法
- pom文件
<dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>21.0</version> </dependency>
- 測試方法
public static void main(String[] args) { //需要進行分組的集合 List<Integer> targetList = new ArrayList<>(); targetList.add(1); targetList.add(2); targetList.add(3); targetList.add(4); targetList.add(5); targetList.add(6); //集合分組。2代表 每兩個分成一組。已知集合size=6,兩個一組即分為三組 List<List<Integer>> partition = Lists.partition(targetList, 2); System.out.println("切分后的數(shù)組,index【0】:"+partition.get(0)); System.out.println("切分后的數(shù)組,index【1】:"+partition.get(1)); System.out.println("切分后的數(shù)組,index【2】:"+partition.get(2)); }
- 結果
注意:
如果對也就是對子集合的操作會反映到原集合, 對原集合的操作也會影響子集合。
- 測試方法
public static void main(String[] args) { List<Integer> targetList = new ArrayList<>(); targetList.add(1); targetList.add(2); targetList.add(3); targetList.add(4); targetList.add(5); targetList.add(6); List<List<Integer>> partition = Lists.partition(targetList, 2); System.out.println("切分后的數(shù)組,index【0】:"+partition.get(0)); System.out.println("切分后的數(shù)組,index【1】:"+partition.get(1)); System.out.println("切分后的數(shù)組,index【2】:"+partition.get(2)); targetList.clear(); System.out.println("原集合大小"+targetList.size()); System.out.println("分組后集合大小"+partition.size()); }
- 結果
總結
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
SpringBoot整合Elasticsearch并實現(xiàn)CRUD操作
這篇文章主要介紹了SpringBoot整合Elasticsearch并實現(xiàn)CRUD操作,需要的朋友可以參考下2018-03-03springboot?jpa?實現(xiàn)返回結果自定義查詢
這篇文章主要介紹了springboot?jpa?實現(xiàn)返回結果自定義查詢方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-02-02