Java 手动分页

    public <T> List<T> manualPage(List<T> list, Integer pageNum, Integer pageSize) {
        if (org.springframework.util.CollectionUtils.isEmpty(list)) {
            return list;
        }
        pageNum = pageNum == null ? 1 : pageNum;
        pageSize = pageSize == null ? 10 : pageSize;
        List<T> newList = new ArrayList<>();
        //总记录数
        int total = list.size();
        // 开始索引
        int fromIndex = (pageNum - 1) * pageSize;
        // 结束索引
        int toIndex = fromIndex + pageSize;
        // 如果结束索引大于集合的最大索引,那么规定结束索引=集合大小
        toIndex = Math.min(toIndex, total);
        // 开始索引 大于 总记录数则返回空
        newList = fromIndex > total ? newList : list.subList(fromIndex, toIndex);
        return newList;
    }

你可能感兴趣的:(java,java)