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]
  • 相关阅读:
    R 读取xls/xlsx文件
    网页免费转换为可编辑的PDF
    Python: NumPy, Pandas学习资料
    鱼油资料
    Activity的四种启动模式和onNewIntent()
    Android Service、IntentService,Service和组件间通信
    Activity生命周期
    Node.js学习起步
    Android 技能图谱学习路线
    Blog
  • 原文地址:https://www.cnblogs.com/cnsec/p/13286799.html
Copyright © 2011-2022 走看看