服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - Java中将List拆分为多个小list集合的实现代码

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

2021-08-29 12:50境里婆娑 Java教程

这篇文章主要介绍了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

延伸 · 阅读

精彩推荐