java自定义分页方法

如果你已经有一个 List<T>,并希望对这个列表进行分页,可以通过手动实现分页逻辑来完成。下面是一个简单的示例:

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

public class PaginationUtils {

    public static <T> List<T> paginateList(List<T> list, int currentPage, int pageSize) {
        if (list == null || list.isEmpty()) {
            return new ArrayList<>();
        }

        int totalItems = list.size();
        int totalPages = (int) Math.ceil((double) totalItems / pageSize);

        // 确保当前页不超过总页数
        if (currentPage > totalPages) {
            return new ArrayList<>();
        }

        // 计算开始和结束索引
        int startIndex = (currentPage - 1) * pageSize;
        int endIndex = Math.min(startIndex + pageSize, totalItems);

        return list.subList(startIndex, endIndex);
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值