zoukankan      html  css  js  c++  java
  • Java-List分页工具

    package util;
    
    import java.util.ArrayList;
    import java.util.List;
    
    public class Paging {
        List<?> list;
        int pageCount;
    
        public Paging() {
    
        }
    
        /**
         * 初始化
         * 
         * @param list
         *            数据库查询到的数据集合
         * @param pageCount
         *            每页显示的记录条数
         */
        public Paging(List<?> list, int pageCount) {
            this.list = list;
            this.pageCount = pageCount;
        }
    
        /**
         * 返回当前页的记录集合
         * 
         * @param nowPage
         *            当前页
         * @return 当前页的List集合(页数从0开始)
         */
        @SuppressWarnings("unchecked")
        public List<Object> getPaging(int nowPage) {
            // 总记录条数
            int count = list.size();
            // 分页集合
            List<Object> list = new ArrayList<Object>();
            for (int i = 0; i < count; i += pageCount) {
                List<Object> temp = new ArrayList<Object>();
                if ((count - i) >= pageCount) {
                    for (int j = 0; j < pageCount; j++) {
                        temp.add(this.list.get(i + j));
                    }
                } else {
                    for (int j = 0; j < count - i; j++) {
                        temp.add(this.list.get(i + j));
                    }
                }
                list.add(temp);
            }
            // 返回当前页
            return (List<Object>) list.get(nowPage);
        }
    
        public int getPageNum() {
            // 总记录条数
            int count = list.size();
            // 分页数
            int pageNum = count / pageCount;
            if (count % pageCount != 0) {
                pageNum += 1;
            }
            return pageNum;
        }
    }
    

    测试:

    public class Mian {
    
        public static void main(String[] args) {
    
            List<String> list = new ArrayList<String>();
            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.add("10");
            Paging page = new Paging(list,4);
            System.out.println(page.getPaging(1));
        }
    }//结果[5, 6, 7, 8]
  • 相关阅读:
    递归部门
    web攻击几种方法
    β版本apk下载地址及源代码github地址
    软件工程第六组U-Helpβ版使用说明
    软件工程第六组(六扇门)β版本最终答辩博客
    alpha版本展示
    用户Bug修补报告
    任务墙最终版
    个人总结-尹童欣
    个人总结-齐天浩
  • 原文地址:https://www.cnblogs.com/cnsec/p/13286799.html
Copyright © 2011-2022 走看看