好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Java中将List拆分为多个小list集合的实现代码

前言:在平常写代码时候可能会遇到需要将一个大list拆分多个小list,进行一些业务处理。

一、如何将List拆分为多个小list

如何将List拆分多个小list,首先我们需要list.sublist这个方法如何使用。
list.sublist(int fromIndex, int toIndex)方法有两个参数。
fromIndex:为起始索引(包含)
toIndex:为终止索引(不包含)的子列表(List)

但值得注意的是,返回的这个子列表的幕后其实还是原列表;也就是说,修改这个子列表,将导致原列表也发生改变;反之亦然。

具体实现试下:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

public static <T> List<List<T>> splistList(List<T> list, int subNum) {

     List<List<T>> tNewList = new ArrayList<List<T>>();

     int priIndex = 0 ;

     int lastPriIndex = 0 ;

     int insertTimes = list.size()/subNum;

     List<T> subList = new ArrayList<>();

     for ( int i = 0 ;i <= insertTimes;i++) {

       priIndex = subNum*i;

       lastPriIndex = priIndex + subNum;

       if (i == insertTimes) {

         subList = list.subList(priIndex,list.size());

       } else {

         subList = list.subList(priIndex,lastPriIndex);

       }

       if (subList.size() > 0 ) {

         tNewList.add(subList);

       }

     }

     return tNewList;

   }

测试代码如下:

?

1

2

3

4

5

public static void main(String[] args) {

     List<String> list = Arrays.asList( "1" , "2" , "3" , "4" , "5" , "6" , "7" , "8" , "9" );

     List<List<String>> lists = splistList(list, 4 );

     System.out.println(lists.size());

   }

输出结果:

lists size is:3

到此这篇关于Java中将List拆分为多个小list集合的实现代码的文章就介绍到这了,更多相关java list拆分内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

原文链接:https://blog.csdn.net/TreeShu321/article/details/112793887

查看更多关于Java中将List拆分为多个小list集合的实现代码的详细内容...

  阅读:52次