集合分页展示,补全最后一页

2024-09-03 01:08

本文主要是介绍集合分页展示,补全最后一页,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

开发中遇到过把一个固定的集合分页展示的问题,页数和每页展示的条数又是不固定的,而且常出现最后一页或者最后几页需要使用前几页的内容补全的情况


下面是我的解决办法,java代码如下,可以根据该代码调整成js、Freemarker等语言代码:




package com.rq.spring.main;


import java.util.ArrayList;
import java.util.List;


/**
 * 分页展示集合,每页的展示条数固定,集合总条数不固定,也就是会出现最后一页不满的情况
 * 一般采用的办法是把第一页的内容复制,补充到后面
 * 如果展示的页数不固定,则需要把前几页的内容复制,补充到后面
 * 
 * 如有集合:[1, 2, 3, 4, 5],每页展示3条,
 * 页数根据集合定:
 * 则展示两页,分别是:
 * 1,2,3
 * 4,5,1
 * 页数固定为3:
 * 则分别是:
 * 1,2,3
 * 4,5,1
 * 2,3,4
 * @author 任强
 *
 */
public class TestListFor {


public static void main(String[] args) {
List<String> list = new ArrayList<>();
list.add("0");list.add("1");list.add("2");
list.add("3");list.add("4");list.add("5");
list.add("6");list.add("7");list.add("8");
list.add("9");
list(3, 9, list);//每页三条数据,固定展示9页
}

public static void list(int pageSize, int page, List<String> list){
int listSize = list.size();
// int page = (listSize % pageSize == 0 ? (listSize / pageSize) : (listSize / pageSize + 1));
//如果page不固定,则使用传入的参数
for(int i = 1 ; i <= page ; i ++){
for(int j = (i - 1) * pageSize ; j <= i * pageSize - 1 ; j ++ ){
int index = j;
while(index > listSize - 1){
index = index - listSize;
}
System.out.println(list.get(index));
}
}
}
}

这篇关于集合分页展示,补全最后一页的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1131588

相关文章

uva 11178 计算集合模板题

题意: 求三角形行三个角三等分点射线交出的内三角形坐标。 代码: #include <iostream>#include <cstdio>#include <cstdlib>#include <algorithm>#include <cstring>#include <cmath>#include <stack>#include <vector>#include <

2、PF-Net点云补全

2、PF-Net 点云补全 PF-Net论文链接:PF-Net PF-Net (Point Fractal Network for 3D Point Cloud Completion)是一种专门为三维点云补全设计的深度学习模型。点云补全实际上和图片补全是一个逻辑,都是采用GAN模型的思想来进行补全,在图片补全中,将部分像素点删除并且标记,然后卷积特征提取预测、判别器判别,来训练模型,生成的像

两个月冲刺软考——访问位与修改位的题型(淘汰哪一页);内聚的类型;关于码制的知识点;地址映射的相关内容

1.访问位与修改位的题型(淘汰哪一页) 访问位:为1时表示在内存期间被访问过,为0时表示未被访问;修改位:为1时表示该页面自从被装入内存后被修改过,为0时表示未修改过。 置换页面时,最先置换访问位和修改位为00的,其次是01(没被访问但被修改过)的,之后是10(被访问了但没被修改过),最后是11。 2.内聚的类型 功能内聚:完成一个单一功能,各个部分协同工作,缺一不可。 顺序内聚:

oracle分页和mysql分页

mysql 分页 --查前5 数据select * from table_name limit 0,5 select * from table_name limit 5 --limit关键字的用法:LIMIT [offset,] rows--offset指定要返回的第一行的偏移量,rows第二个指定返回行的最大数目。初始行的偏移量是0(不是1)。   oracle 分页 --查前1-9

Java基础回顾系列-第六天-Java集合

Java基础回顾系列-第六天-Java集合 集合概述数组的弊端集合框架的优点Java集合关系图集合框架体系图java.util.Collection接口 List集合java.util.List接口java.util.ArrayListjava.util.LinkedListjava.util.Vector Set集合java.util.Set接口java.util.HashSetjava

【408数据结构】散列 (哈希)知识点集合复习考点题目

苏泽  “弃工从研”的路上很孤独,于是我记下了些许笔记相伴,希望能够帮助到大家    知识点 1. 散列查找 散列查找是一种高效的查找方法,它通过散列函数将关键字映射到数组的一个位置,从而实现快速查找。这种方法的时间复杂度平均为(

起点中文网防止网页调试的代码展示

起点中文网对爬虫非常敏感。如图,想在页面启用调试后会显示“已在调试程序中暂停”。 选择停用断点并继续运行后会造成cpu占用率升高电脑卡顿。 经简单分析网站使用了js代码用于防止调试并在强制继续运行后造成电脑卡顿,代码如下: function A(A, B) {if (null != B && "undefined" != typeof Symbol && B[Symbol.hasInstan

java集合的概述

集合就是一个容器,我们可以把多个对象放入的容器中。就像水杯(假设容量可以不断扩大)一样,你可以往水杯中不断地添加水,既然是水杯,你就不能往里添加沙子,也就是说集合中添加的对象必须是同一个类型的(引用类型,而不能是基本类型)。 看到集合的介绍会让我们的想起数组,那么集合和数组有什么区别呢? 首先,数组的大小是固定的,而集合理论上大小是不限的。 其次,数组既可以存储基本数据类型的数据,也可以存储

fastreport打印trichedit分页问题的解决

用fastreport来打印richedit里面的内容。刚开始放一个frxrichview组件到报表上,然后在 var str: TMemoryStream; begin    begin      str:= TMemoryStream.Create;      CurrRichRecord.richedit.Lines.SaveToStream(str);      str.Posit

简单Hbase 分页方案

简单Hbase分页方案 网上大多数分页方案分为从服务端分页或者从客户端分页 服务端分页方式主要利用PageFilter过滤器,首先太复杂,其次针对集群的兼容性不是很好,作者利用服务端分页+客户端分页结合方式给出一种简单易行的中间方案。 1.利用PageFilter过滤器从服务端分页,过滤出所需要的最大条数, 注:作者认为大多数用户不会进行太深的翻页,假设pageSize=5,客户饭100页一共