首页 > 其他分享 >list集合分组拆分

list集合分组拆分

时间:2023-09-08 13:56:24浏览次数:36  
标签:int List list number subList source 分组 拆分 offset

# n组 

public static <T> List<List<T>> averageAssign(List<T> source, int n) { List<List<T>> result = Lists.newArrayList(); int renumber = source.size() % n; int number = source.size() / n; int offset = 0; for (int i = 0; i < n; i++) { List<T> value; if (renumber > 0) { value = source.subList(i * number + offset, (i + 1) * number + offset + 1); renumber--; offset++; } else { value = source.subList(i * number + offset, (i + 1) * number + offset); } result.add(value); } return result; }

 

subLists = averageAssign(dtoList, 4);
List<CompletableFuture<Void>> cfList = new ArrayList<>(4);
for(List<Integer> subList: subLists) {
cfList.add(CompletableFuture.runAsync(() -> batchRun(null, subList, null)));
}
CompletableFuture.allOf(cfList.toArray(new CompletableFuture[0])).join(); 

标签:int,List,list,number,subList,source,分组,拆分,offset
From: https://www.cnblogs.com/yk775879106/p/17687374.html

相关文章

  • 使用JavaStream将List转为Map
    有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top首发博客地址系列文章地址使用JavaStream将List转换为Map可以使用Collectors.toMap()方法。toMap()方法接受两个参数,第一个参数是用于提取Map的键的函数,第二个参数是用于提......
  • Qt QListView添加数据
    QListView添加数据准备数据QStringListlist;list<<"数据1"<<"数据2";准备模型QStringListModel*model;model=newQStringListModel(this);将数据添加到模型中model->setStringList(list);为QListView添加数据模型ui->listView->setMode......
  • linkedListRE
    1、链表概述链表是一种通过指针串联在一起的线性结构,每一个节点由两部分组成,一个是数据域一个是指针域(存放指向下一个节点的指针),最后一个节点的指针域指向null(空指针的意思)。链表的入口节点称为链表的头结点也就是head。2、链表类型单链表指针域只能指向节点的下一个节点双......
  • pandas-数据合并和拆分
    pandas-数据合并和拆分目录pandas-数据合并和拆分数据拆分拆分行拆分列按条件拆分数据合并appendmergeconcatjoin参考资料数据集拆分是将一个大型的数据集拆分为多个较小的数据集,可以让数据更加清晰易懂,也方便对单个数据集进行分析和处理。同时,分开的数据集也可以分别应用不同......
  • std list多线程使用
    #include<iostream>#include<list>#include<thread>#include<mutex>#include<condition_variable>#include<unistd.h>std::list<int>my_list;std::mutexmy_mutex;std::condition_variablemy_cond;voidadd_ele......
  • LRUCache算法缓存策略(map+doubleLinkedList)
    packagearithmetic;importjava.util.HashMap;publicclassFaceTest81{//LRUcache缓存策略map+双向链表//get、update、put需要时间复杂度达到O1//map+双向链表结构publicFaceTest81(intcapacity){ cache=newMyCache(capacity);}privateMyCache<Integer,Intege......
  • C#List导出Excel
    1.导入NPOI2.引用如下内容usingNPOI.XSSF.UserModel;usingNPOI.SS.UserModel;usingNPOI.HSSF.UserModel;usingSystem.IO;3.List数据1).如果是Json类型数据从前台传递到后台,用如下方式获取前台数据;注:数据类是自定义的类;Key是前台传到后台的键名List<数据类>list=  ......
  • 【Redis】Could not create server TCP listening socket __6379_ bind_ 在一个非套接
    问题描述:安装Redis,redis-server无法启动,报错。[34420]20Aug21:43:21.110#oO0OoO0OoO0OoRedisisstartingoO0OoO0OoO0Oo[34420]20Aug21:43:21.110#Redisversion=5.0.14.1,bits=64,commit=ec77f72d,modified=0,pid=34420,juststarted[34420]20Aug21:43:21.1......
  • 利用bobo-browse 实现lucene的分组统计功能
    bobo-browse是一用java写的lucene扩展组件,通过它可以很方便在lucene上实现分组统计功能。可以从http://code.google.com/p/bobo-browse/上下载和查看相关文档。下面介绍如何使用:第一步:设置相关配置文件bobo-browse使用了spring,这里主要配置bobo.spring和field.xml两个文件。可以......
  • Java低代码开发:jvs-list(列表引擎)功能(二)字段及样式配置
    字段的增减进入列表页设计器-页表设计界面,点击新增一行、或者删除按钮,可以对字段进行增减操作,如果对于权限的列表页,可以使用批量创建字段的按钮:字段的批量设置,点击批量添加如下图所示字段为中文名称,每一行为一个字段,默认去除空格默认字段系统提供创建人、创建时间、修改人、修改时......