我的创作纪念日_256天

机缘

  1. 实战项目中的经验分享
  2. 日常学习过程中的记录
  3. 通过文章进行技术交流
  4. 工作中总结了一些心得体会

收获

  1. 获得了13个粉丝的关注
  2. 获得了11W的阅读量,57次点赞,196次收藏
  3. 提高了语言表达能力,学到了很多有用的知识

日常

  1. 有限的精力下,坚持每月创作数篇博文
  2. 分享自己的工作心得和技术点总结

成就

工作中遇到很多问题,也做了很多次总结,有些来不及写到博客里,有些记录了下来。

分享一段后台分页的代码:

import com.google.common.collect.Lists;

import java.util.List;

public class PageUtil {

    /**
     * 按照传入的参数,进行分页
     * @param pageNum  页数
     * @param pageSize 每页条数
     * @param sourceList 源列表
     * @param isPage 是否分页
     * @param <T> 泛型对象
     * @return 返回结果集
     */
    public static <T> List<T> page(Integer pageNum, Integer pageSize, List<T> sourceList, Boolean isPage){

        List<T> pageList = sourceList;

        // 当列表不为空的时候,才进行数据逻辑处理
        if (sourceList != null && !sourceList.isEmpty()) {
            int sourceSize = sourceList.size();
            if (isPage) {
                pageNum = (pageNum == null || pageNum <= 0) ? 1 : pageNum;
                pageSize = (pageSize == null || pageSize <= 0) ? 10 : pageSize;

                // 步骤分解,便于理解
//                int startPosition = Math.min((pageNum - 1) * pageSize, sourceSize);
//                int endPosition = Math.min(pageNum * pageSize, sourceSize);
//                pageList = sourceList.subList(startPosition, endPosition);
                // 分页的起始和截止位置,和源列表的size大小进行对比,分别取最小值
                pageList = sourceList.subList(Math.min((pageNum - 1) * pageSize, sourceSize), Math.min(pageNum * pageSize, sourceSize));
            }
        }

        return pageList;
    }

    public static void main(String[] args) {
        List<Integer> intList = Lists.newArrayList(1, 2, 3, 4, 5, 6, 7);
//        List<Integer> intList = Lists.newArrayList();
//        ResultList<Integer> resultList = page(1, 3, intList, false);
//        ResultList<Integer> resultList = page(2, 3, intList, true);
//        ResultList<Integer> resultList = page(3, 3, intList, true);
//        ResultList<Integer> resultList = page(null, null, intList, true);
//        ResultList<Integer> resultList = page(2, 10, intList, true);
//        ResultList<Integer> resultList = page(2, 15, intList, true);
//        ResultList<Integer> resultList = page(1, 15, intList, true);
        List<Integer> resultList = page(1, 10, intList, true);

        System.out.println("resultList: " + resultList);
    }
}

憧憬

计划后期往系统架构师方向奋斗,多夯实基础,学习前沿技术,多动手实践,尽量做到知行合一!

也会持续分享自己学习和工作中遇到的问题和经验总结,希望能和CSDN的小伙伴们一起成长!

Tips

  1. 您发布的文章将会展示至 里程碑专区 ,您也可以在 专区 内查看其他创作者的纪念日文章
  2. 优质的纪念文章将会获得神秘打赏哦

猜你喜欢

转载自blog.csdn.net/aikudexiaohai/article/details/133297477
今日推荐