欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java對list集合進行分頁的四種寫法總結(jié)

 更新時間:2025年05月24日 09:13:01   作者:codingPower  
這篇文章主要介紹了java對list集合進行分頁的四種寫法總結(jié),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

java對list集合進行分頁的寫法

假設(shè)有一個list數(shù)組,因為總數(shù)過大,在進行查詢或者調(diào)用外部接口時,需要對其進行分頁處理,可以用以下幾種方式進行處理

eq:

List<String>  bigList=Lists.newArrayList("a","b","c","d","e","f","g","h");

1. subList分頁【java.util.List.sublist(int fromIndex,int toIndex)】

 int pageSize=3;//每頁大小
 int count=bigList.size();//總list
 int totalPage=(int)((count/pageSize)+(count % pageSize >0?1:0));//總頁數(shù)
 for(int i=1;i<=totalPage;i++){
 	List<String> smallList=bigList.sublist(pageSize*(i-1),Math.min(pageSize*i,count));//截取對應(yīng)范圍數(shù)據(jù)
 	System.out.println(smallList.toString());
 }

2. partition分頁【com.google.com.collect.Lists.partition(List list,int size) 】

int pageSize=3;//每頁大小
List<List<String>> partitionList=Lists.partition(bigList,pageSize);//進行分頁
for(List<String> smallList:partitionList){
	System.out.println(smallList.toString());
}

3. java8 stream流 分頁

  
 int pageSize=3;//每頁大小
 int count=bigList.size();//總list
 int totalPage=(int)((count/pageSize)+(count % pageSize >0?1:0));//總頁數(shù)
 // 使用 Stream 實現(xiàn)分頁
 	for(int i=1;i<=totalPage;i++){
        List<String> smallList= bigList.stream()
                .skip(PageSize*(i-1)) // 跳過前 PageSize*(i-1) 個元素
                .limit(pageSize)    // 限制結(jié)果數(shù)量為 pageSize
                .collect(Collectors.toList()); //結(jié)果為列表
         System.out.println(smallList.toString());
        }

4. hutool工具類提供的方法ListUtil.split(List list,int size)

實際內(nèi)部實現(xiàn)還是subList分頁

int pageSize=3;//每頁大小
List<List<String>> splitList=ListUtil.split(bigList,pageSize);//bigList 需處理的列表,pageSize分頁長度
for(List<String> smallList:splitList){
	System.out.println(smallList.toString());
}

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java 數(shù)據(jù)結(jié)構(gòu)鏈表操作實現(xiàn)代碼

    Java 數(shù)據(jù)結(jié)構(gòu)鏈表操作實現(xiàn)代碼

    這篇文章主要介紹了Java 數(shù)據(jù)結(jié)構(gòu)鏈表操作的相關(guān)資料,并附實例代碼,需要的朋友可以參考下
    2016-10-10
  • IDEA解決springboot熱部署失效問題(推薦)

    IDEA解決springboot熱部署失效問題(推薦)

    熱部署,就是在應(yīng)用正在運行的時候升級軟件,卻不需要重新啟動應(yīng)用。這篇文章主要介紹了IDEA解決springboot熱部署失效問題,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09
  • 圖解JVM垃圾內(nèi)存回收算法

    圖解JVM垃圾內(nèi)存回收算法

    這篇文章主要介紹了圖解JVM垃圾內(nèi)存回收算法,由于年輕代堆空間的垃圾回收會很頻繁,因此其垃圾回收算法會更加重視回收效率,下面小編就和大家來一起學習一下吧
    2019-06-06
  • spring boot配置多個請求服務(wù)代理的完整步驟

    spring boot配置多個請求服務(wù)代理的完整步驟

    這篇文章主要給大家介紹了關(guān)于spring boot配置多個請求服務(wù)代理的完整步驟,文中通過示例代碼介紹的非常詳細,對大家學習或者使用spring boot具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-11-11
  • 從內(nèi)存模型中了解Java final的全部細節(jié)

    從內(nèi)存模型中了解Java final的全部細節(jié)

    關(guān)于final關(guān)鍵字,它也是我們一個經(jīng)常用的關(guān)鍵字,可以修飾在類上、或者修飾在變量、方法上,以此看來定義它的一些不可變性!像我們經(jīng)常使用的String類中,它便是final來修飾的類,并且它的字符數(shù)組也是被final所修飾的。但是一些final的一些細節(jié)你真的了解過嗎
    2022-03-03
  • Java使用分治算法實現(xiàn)排序數(shù)索引功能示例【二分搜索】

    Java使用分治算法實現(xiàn)排序數(shù)索引功能示例【二分搜索】

    這篇文章主要介紹了Java使用分治算法實現(xiàn)排序數(shù)索引功能,結(jié)合具體實例形式分析了java分治算法進行排序索引的相關(guān)操作技巧,需要的朋友可以參考下
    2017-09-09
  • mybatis-plus?Wrapper條件構(gòu)造器updateForSet更新方式

    mybatis-plus?Wrapper條件構(gòu)造器updateForSet更新方式

    這篇文章主要介紹了mybatis-plus?Wrapper條件構(gòu)造器updateForSet更新方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • 關(guān)于intellij idea打開就閃退或關(guān)閉詳細解決辦法

    關(guān)于intellij idea打開就閃退或關(guān)閉詳細解決辦法

    這篇文章主要介紹了關(guān)于intellij idea打開就閃退或關(guān)閉詳細解決辦法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • Spring Cache手動清理Redis緩存

    Spring Cache手動清理Redis緩存

    這篇文章主要介紹了Spring Cache手動清理Redis緩存,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-10-10
  • Java中indexOf()方法詳解及其日常使用舉例

    Java中indexOf()方法詳解及其日常使用舉例

    這篇文章主要給大家介紹了關(guān)于Java中indexOf()方法詳解及其日常使用舉例的相關(guān)資料,indexOf()方法是JavaScript字符串的內(nèi)置方法之一,它用于查找給定子字符串在原始字符串中第一次出現(xiàn)的位置,需要的朋友可以參考下
    2023-12-12

最新評論