全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

java 对ArrayList进行分页实例代码

java 对ArrayList进行分页

概述

系统与系统之间的交互,通常是使用接口的形式。假设B系统提供了一个批量的查询接口,限制每次只能查询50条数据,而我们实际需要查询500条数据,这个时候可以对这500条数据做分批操作,分10次调用B系统的批量接口。

如果B系统的查询接口是使用List作为入参,那么要实现分批调用的话,可以利用ArrayList的subList方法来处理。

代码

sublist方法的定义:

  List<E> subList(int fromIndex, int toIndex);

只需要准确的算出fromIndex和 toIndex即可。

数据准备

public class TestArrayList {

  public static void main(String[] args) {
    List<Long> datas = Arrays.asList(new Long [] {1L,2L,3L,4L,5L,6L,7L});
  }
}

分页算法

import java.util.Arrays;
import java.util.List;

public class TestArrayList {

  private static final Integer PAGE_SIZE = 3;
  public static void main(String[] args) {
    List<Long> datas = Arrays.asList(new Long [] {1L,2L,3L,4L,5L,6L,7L,8L});

    //总记录数
    Integer totalCount = datas.size();

    //分多少次处理
    Integer requestCount = totalCount / PAGE_SIZE;

    for (int i = 0; i <= requestCount; i++) {
      Integer fromIndex = i * PAGE_SIZE;
      //如果总数少于PAGE_SIZE,为了防止数组越界,toIndex直接使用totalCount即可
      int toIndex = Math.min(totalCount, (i + 1) * PAGE_SIZE);
      List<Long> subList = datas.subList(fromIndex, toIndex);
      System.out.println(subList);
      //总数不到一页或者刚好等于一页的时候,只需要处理一次就可以退出for循环了
      if (toIndex == totalCount) {
        break;
      }
    }

  }
}

测试场景

1、总数不足一页
2、总数刚好等于一页
3、总数多余一页

上面三个case都可以正常通过。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# java  # 对ArrayList进行分页  # ArrayList进行分页实例详解  # ArrayList分页  # java对list集合进行分页的四种写法总结  # Java实现List集合手动分页的方法  # java中List分页的几种方法介绍  # Java List分页功能实现代码实例  # java中对list分页并显示数据到页面实例代码  # Java中对list集合进行分页的四种方式介绍  # 分页  # 只需要  # 希望能  # 这个时候  # 谢谢大家  # 可以利用  # 以对  # 方法来  # 为了防止  # 就可以  # gt  # int  # lt  # brush  # public  # TestArrayList  # strong  # fromIndex  # toIndex  # class 


相关文章: c# 在高并发场景下,委托和接口调用的性能对比  如何在腾讯云服务器上快速搭建个人网站?  微信h5制作网站有哪些,免费微信H5页面制作工具?  常州企业建站如何选择最佳模板?  盐城做公司网站,江苏电子版退休证办理流程?  ,想在网上投简历,哪几个网站比较好?  制作电商网页,电商供应链怎么做?  香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化  建站之星如何快速更换网站模板?  购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?  宝塔建站教程:一键部署配置流程与SEO优化实战指南  建站之星微信建站一键生成小程序+多端营销系统  弹幕视频网站制作教程下载,弹幕视频网站是什么意思?  c# 在高并发下使用反射发射(Reflection.Emit)的性能  合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?  c++怎么用jemalloc c++替换默认内存分配器【性能】  公司网站制作价格怎么算,公司办个官网需要多少钱?  建站之星如何开启自定义404页面避免用户流失?  官网自助建站系统:SEO优化+多语言支持,快速搭建专业网站  如何零基础在云服务器搭建WordPress站点?  如何选择高效稳定的ISP建站解决方案?  建站为何优先选择香港服务器?  高端建站如何打造兼具美学与转化的品牌官网?  太原网站制作公司有哪些,网约车营运证查询官网?  如何解决ASP生成WAP建站中文乱码问题?  制作网站外包平台,自动化接单网站有哪些?  如何在Windows环境下新建FTP站点并设置权限?  建站之星后台管理系统如何操作?  孙琪峥织梦建站教程如何优化数据库安全?  如何快速生成高效建站系统源代码?  教育培训网站制作流程,请问edu教育网站的域名怎么申请?  高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  新网站制作渠道有哪些,跪求一个无线渠道比较强的小说网站,我要发表小说?  建站主机无法访问?如何排查域名与服务器问题  网站插件制作软件免费下载,网页视频怎么下到本地插件?  如何自定义建站之星网站的导航菜单样式?  如何基于云服务器快速搭建个人网站?  如何在搬瓦工VPS快速搭建网站?  如何在局域网内绑定自建网站域名?  如何用花生壳三步快速搭建专属网站?  如何在IIS中新建站点并配置端口与IP地址?  建站之星代理如何优化在线客服效率?  php能控制zigbee模块吗_php通过串口与cc2530 zigbee通信【介绍】  再谈Python中的字符串与字符编码(推荐)  极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?  如何快速搭建FTP站点实现文件共享?  广州网站设计制作一条龙,广州巨网网络科技有限公司是干什么的?  c++如何打印函数堆栈信息_c++ backtrace函数与符号名解析【方法】  网站按钮制作软件,如何实现网页中按钮的自动点击?  如何配置支付宝与微信支付功能? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。