一、通过Stream的 skip() 和 limit() 方法组合分页
import java.lang.Math; import java.util.*; import java.util.stream.Collectors; public class Main { public static void main(String[] args) { List<String> names=new ArrayList(); names.add("a"); names.add("b"); names.add("c"); names.add("d"); names.add("e"); names.add("f"); names.add("g"); names.add("h"); names.add("i"); names.add("j"); names.add("k"); int total=names.size(); int pageSize=3; /*两种页数计算方式都可以:1.取余计算 2.向上取整*/ int pages = total % pageSize == 0 ? total / pageSize : total / pageSize + 1; // int pages= (int)Math.ceil(Double.valueOf(total)/pageSize); for(int pageNo = 1;pageNo <= pages;pageNo++){ List<String> subName=names.stream().skip((pageNo-1)*pageSize).limit(pageSize).collect(Collectors.toList()); System.out.println(subName); } } }
二、通过数组的 subList() 方法
import java.lang.Math; import java.util.*; import java.util.stream.Collectors; public class Main { public static void main(String[] args) { List<String> names=new ArrayList(); names.add("a"); names.add("b"); names.add("c"); names.add("d"); names.add("e"); names.add("f"); names.add("g"); names.add("h"); names.add("i"); names.add("j"); names.add("k"); int total=names.size(); int pageSize=3; /*两种页数计算方式都可以:1.取余计算 2.向上取整*/ int pages = total % pageSize == 0 ? total / pageSize : total / pageSize + 1; // int pages= (int)Math.ceil(Double.valueOf(total)/pageSize); for(int pageNo=1;pageNo <= pages;pageNo++){ List<String> subName; if (pageNo==pages){ subName=names.subList((pageNo-1)*pageSize,total); } else { subName=names.subList((pageNo-1)*pageSize,pageNo*pageSize); } System.out.println(subName); } } }
最后
以上就是鲜艳耳机最近收集整理的关于java的list分页的方法的全部内容,更多相关java内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复