当前位置: 首页 > news >正文

公司网站空间常见的网站建设技术

公司网站空间,常见的网站建设技术,新化网站建设,万州哪里有做网站的文章目录 前言实现代码执行结果 前言 在项目中有时会出现列表很大,无法一次性批量操作,我们需要将列表分成指定大小的几个子列表,一份一份进行操作,本文提供这样的工具类实现这个需求。 实现代码 以下为ListUtil工具类代码实现…

文章目录

        • 前言
        • 实现代码
        • 执行结果

前言

在项目中有时会出现列表很大,无法一次性批量操作,我们需要将列表分成指定大小的几个子列表,一份一份进行操作,本文提供这样的工具类实现这个需求。

实现代码

以下为ListUtil工具类代码实现:

public class ListUtils {public static <T> List<List<T>> partition(final List<T> list, final int size) {if (list == null) {throw new NullPointerException("List must not be null");}if (size <= 0) {throw new IllegalArgumentException("Size must be greater than 0");}return new Partition<>(list, size);}private static class Partition<T> extends AbstractList<List<T>> {private final List<T> list;private final int size;/*** * @param list 传入的列表* @param size 指定的长度,每size个数据切割为一个子列表*/private Partition(final List<T> list, final int size) {this.list = list;this.size = size;}/*** 获取按指定长度拆分后,索引位置的子列表* @param index* @return*/@Overridepublic List<T> get(final int index) {//获取拆分后子列表的个数final int listSize = size();if (index < 0) {throw new IndexOutOfBoundsException("Index " + index + " must not be negative");}if (index >= listSize) {throw new IndexOutOfBoundsException("Index " + index + " must be less than size " +listSize);}final int start = index * size;final int end = Math.min(start + size, list.size());//返回子列表return list.subList(start, end);}@Overridepublic int size() {//(传入列表总长度/指定的长度)向上取整,即为拆分后子列表的个数return (int) Math.ceil((double) list.size() / (double) size);}@Overridepublic boolean isEmpty() {return list.isEmpty();}}
}
执行结果
  1. 在上述类里写个main方法用以测试结果。

      public static void main(String[] args) {List<String> list=new ArrayList<String>();for (int i = 0; i <= 2000; i++) {list.add(i+"");}//将list每2000条数据拆分成一个子列表List<List<String>> partition = ListUtils.partition(list, 2000);System.out.println("将list每2000条数据拆分成一个子列表:");System.out.println("子列表个数:"+partition.size());System.out.println("第二个子列表的内容:");partition.get(1).forEach(System.out::print);System.out.println("-------------------------------------------------------");System.out.println("将list每10条数据拆分成一个子列表:");List<List<String>> partition1 = ListUtils.partition(list, 10);System.out.println("子列表个数:"+partition1.size());System.out.println("第三个子列表的内容:");partition1.get(2).forEach(s -> {System.out.print(s+" ");});}
    
  2. 执行main方法,得到结果如下:
    在这里插入图片描述

  3. 分析结果

    将list每2000条数据拆分成一个子列表后,子列表个数为2,第一个子列表里的内容{0,1,…,1998,1999},第二个子列表的内容为{2000}。
    将list每10条数据拆分成一个子列表后,子列表个数为201,分别为{0,1,…,8,9},……,{1990,1991,…,1998,1999},{2000}。
    结果符合我们的要求,通过这个工具类,我们实现了所需功能。

http://www.yayakq.cn/news/197701/

相关文章:

  • ssc网站建设网站建设都包括哪些
  • 网站建立安全连接失败辽宁省住房和城乡建设厅网站首页
  • 国内做的好的网站本地wordpress 固定连接
  • ASP动态商业网站建设案例网站制作与网站建设
  • 如何做网站公司名seodedecms搭建购物网站
  • 洛阳网站制作保定网站建设求职简历
  • 曹县建设厅网站中国建设银行注册网站用户名怎么填
  • 文学网站开发设计报告忻州做网站
  • 德州网站建设公司微商客源人脉app下载
  • 网站建设合约具体内容网站建设的发展目标
  • 北京市建设工程审核网站宁夏交通建设有限公司网站
  • 成都集团网站建设永久有效的代理ip
  • 网站制作公司兴田德润怎么联系织梦网站首页在哪里改
  • 工业设计网站官网网站突然暴增流量
  • 外贸综合服务网站建设百度输入法免费下载
  • 广州做网站的公新乐市做网站
  • 建设网站 织梦wordpress安装后应该删掉那些文件
  • 网站手机版建设黔南州住房和城乡建设局网站
  • 苏州网站建设点一点网站开发的单价
  • 河北建设协会官方网站武安网站设计公司
  • 服务器和网站的关系珠宝静态网站模板
  • 北京高端网站建设公司哪家好茶庄网站模板
  • 常州手机网站开发网络域名怎么设置
  • 做商城网站要请程序员吗网站建设大连
  • 最便宜的视频网站建设南京中如建设公司
  • 网站建设的商品分类编码专注于响应式网站开发
  • 如何做网站销售四川建设厅官方网站
  • 网站投票活动怎么做公司注册地址规定
  • wordpress全站ajax太原市建设工程交易中心网站
  • 试用型网站外汇交易平台网站建设