ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Iterables.partition

2021-11-27 19:01:18  阅读:150  来源: 互联网

标签:partition list1 list2 add Iterables Iterable


很多时候都有将List拆分为给定大小的多个子列表的操作,以前需要写很多复杂的逻辑才能实现,试试

强大的集合工具Iterables

Guava提供了一些java.util.Collections中没有提供的关于Iterable的公共操作,
而这些操作都封装在了工具类 - Iterables中.

    List<Integer> list1 = Lists.newArrayListWithCapacity(0);
        list1.add(null);
        list1.add(1);
        list1.add(2);
        list1.add(9);

        List<Integer> list2 = Lists.newArrayListWithCapacity(0);
        list2.add(2);
        list2.add(3);
        list2.add(4);
        list2.add(6);

  

合并方法 - concat()
Iterable<Integer> testIterable = Iterables.concat(list1, list2);
System.out.println(testIterable);//[null, 1, 2, 9, 2, 3, 4, 6]
分区方法 - partition()

Iterables提供了对指定Iterable<T>通过指定分区大小进行分区.并返回Iterable<List<T>>.
需要注意的是:Iterable不能为NULL并且指定的分区大小必须大于0.

  Iterable<List<Integer>> partition = Iterables.partition(testIterable, 3);
        System.out.println(partition);//[[null, 1, 2], [9, 2, 3], [4, 6]]

  

标签:partition,list1,list2,add,Iterables,Iterable
来源: https://www.cnblogs.com/q1359720840/p/15612722.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有