`
walker_v5
  • 浏览: 34022 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java8 分页批量操作

阅读更多
package com.walker.agent;

import java.util.Arrays;
import java.util.List;
import java.util.function.Consumer;

public class StTest {
    public static void main(String[] args) {
        // 原本的list
        List<Integer> a = Arrays.asList(0, 1, 2, 3);
        // 处理list 的方法(每个批次处理的方法)
        Consumer<List<?>> consumer = (t) -> System.out.println(Arrays.toString(t.toArray()));
        // 每页2条
        accept(a, 2, consumer);
    }

    /**
     *  需要处理的 list
     * @param list  需要处理的list
     * @param pageSize 每次处理多少条
     * @param consumer 批量处理的方法
     */
    public static void accept(List<?> list, int pageSize, Consumer<List<?>> consumer) {
        // 需要处理的list 的大小
        int len = list.size();
        for (int endIndex = 0, startIndex; endIndex < len; ) {
            startIndex = endIndex;
            endIndex = startIndex + pageSize;
            if (endIndex > len) {
                endIndex = len;
            }
            // 开始处理
            consumer.accept(list.subList(startIndex, endIndex));
        }
    }
}

 

分享到:
评论

相关推荐

    java 分页、批量删除

    包含了jsp的简单分页,有首页、尾页、上下页、设置页面数字等,有完整的注释、包、ppt等,mysql数据库的,对后台管理的删除有不错的参考价值,非常适合web初学者,改改就可以在多少场合运用。

    阿里云存储OSS操作示例(单、批量上传、删除、分页预览)

    ASP.NET WEB版阿里云操作示例 .NET Framework 4.0 VS2010 开发,全源代码 主要功能:单文件上传、批量上传、分页预览

    mybatis-base增删改查分页批量操作简单动态sql调用存储过程.zip

    Mabits是一个Java持久化框架,它提供了动态SQL的功能。动态SQL是一种根据不同条件动态生成SQL语句的技术。在Mabits中,动态SQL通常是通过使用一组特殊的标签和代码块来实现的,这些标签和代码块可以根据条件包含或...

    elasticsearch聚合后分页

    方法如果传总页数了,es就不用查询总页数,直接通过开始位置到结束位置取数即可

    java开源包8

    MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:...

    mybaits 多线程 实现数据批量插入 (运用CountDownLatch实现闭锁)

    mybaits 多线程 实现数据批量插入 (运用CountDownLatch实现闭锁) 1、mybatis批处理 2、数据分批量查询 3、数据分批量插入

    Java代码生成工具(傻瓜式操作无需教程的代码生成工具) v2.0.zip

    生成保存,删除,修改,批量保存,批量修改,批量删除,按条件查询,分页查询等功能。  生成各大主流框架配置文件及jsp页面。  一键生成整个项目,加入jar包部署到服务器即可运行。    傻瓜式操作,无需教程...

    JAVA上百实例源码以及开源项目

     Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系,这些代码面向初级、中级Java程序员。 Java访问权限控制源代码 1个目标文件 摘要:Java源码,...

    JAVA上百实例源码以及开源项目源代码

     Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系,这些代码面向初级、中级Java程序员。 Java访问权限控制源代码 1个目标文件 摘要:Java源码,...

    Java代码生成工具新版

    生成保存,删除,修改,批量保存,批量修改,批量删除,按条件查询,分页查询等功能。 生成各大主流框架配置文件及JSP页面。 一键生成整个项目,加入Jar包部署到服务器即可运行。 傻瓜式操作,无需教程,菜鸟都会用...

    最新Java面试题视频网盘,Java面试题84集、java面试专属及面试必问课程

    │ Java面试题28.mysql和oracle的分页语句(着重说思路).mp4 │ Java面试题29.触发器的使用场景.mp4 │ Java面试题30.存储过程的优点.mp4 │ Java面试题31.jdbc调用存储过程.mp4 │ Java面试题32.简单说一下你对...

    java进阶Solr从基础到实战

    视频详细讲解,需要的小伙伴自行网盘下载,...1. 深度分页 2. Solr Join查询 3. 相关度排序 4.Solr缓存 5.Spring Data Solr 章节五:综合案例,电商网站搜索页面 1.关键字搜索 2.搜索面板展示 3.分页 4.排序 5.高亮

    ES(elasticSearch6.4.0)之java API源码demo-完整注释版

    ES(elasticSearch6.4.0)之java API源码demo-完整注释版,本版本为上一demo版本升级版,封装了ES的javaAPI,支持了模糊查询,排序查询,解析,分页查询等功能,如果有问题请留言。我会及时回复。

    Java中checkbox实现跨页多选的方法

    最近做了一个项目其中遇到这样的需求,要实现checkbox跨页多选功能,经过小编整理,顺利解决,今天小编给大家分享Java中checkbox实现跨页多选的方法,需要的的朋友参考下

    java开源包11

    MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:...

    java开源包6

    MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:...

    java开源包4

    MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:...

    java开源包101

    MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:...

    java开源包9

    MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:...

    java一次性查询处理几百万数据解决方法

    java一次性查询处理几百万数据解决方法 几百万数据是可以处理的 暂时还没试过几千万级的数据处理

Global site tag (gtag.js) - Google Analytics