用Java写一段代码分页
时间: 2024-01-29 12:04:34 浏览: 26
代码如下:
```java
public static List<Object> getPageData(List<Object> dataList, int pageNum, int pageSize) {
List<Object> pageList = new ArrayList<>();
if (dataList == null || dataList.isEmpty()) {
return pageList;
}
int startIndex = (pageNum - 1) * pageSize;
int endIndex = Math.min(startIndex + pageSize, dataList.size());
if (startIndex > endIndex) {
return pageList;
}
for (int i = startIndex; i < endIndex; i++) {
pageList.add(dataList.get(i));
}
return pageList;
}
```
其中,`dataList` 表示原始数据,`pageNum` 表示要获取的页码,`pageSize` 表示每页显示的数据数量。函数返回值为当前页的数据列表。
相关问题
用java生成一段分页功能
可以使用以下代码实现Java中的分页功能:
public class Pagination {
private int totalPages;
private int currentPage;
private int pageSize;
public Pagination(int pageSize) {
this.pageSize = pageSize;
totalPages = 1;
currentPage = 1;
}
public void setRecordsCount(int recordsCount) {
totalPages = recordsCount / pageSize;
if (recordsCount % pageSize > 0) {
totalPages++;
}
}
public void setCurrentPage(int currentPage) {
this.currentPage = currentPage;
}
public int getCurrentPage() {
return currentPage;
}
public int getTotalPages() {
return totalPages;
}
public int getStartIndex() {
return (currentPage - 1) * pageSize;
}
public int getPageSize() {
return pageSize;
}
}
在使用此类的时候,可以传入pageSize参数来指定每页显示的记录数量。可以使用setRecordsCount方法设置总记录数,setCurrentPage方法设置当前页码,getCurrentPage方法获取当前页码,getTotalPages方法获取总页数,getStartIndex方法获取当前页的起始索引,getPageSize方法获取每页记录数。
帮我用java写一个手动分页
好的,刚好我会Java,下面是手动分页的代码:
```java
public static void main(String[] args) {
// 假设有100条数据
int total = 100;
// 每页10条数据
int pageSize = 10;
// 计算总页数
int pageNum = total % pageSize == 0 ? total / pageSize : total / pageSize + 1;
// 当前页码
int currentPage = 1;
// 模拟从数据库中查询出的数据
List<String> dataList = new ArrayList<>();
for (int i = 1; i <= total; i++) {
dataList.add("第" + i + "条数据");
}
// 循环显示每页数据
while (currentPage <= pageNum) {
System.out.println("第" + currentPage + "页数据:");
int startIndex = (currentPage - 1) * pageSize;
int endIndex = startIndex + pageSize;
if (endIndex >= total) {
endIndex = total;
}
for (int i = startIndex; i < endIndex; i++) {
System.out.println(dataList.get(i));
}
System.out.println("--------------------");
currentPage++;
}
}
```
这段代码中,我们假设有100条数据,每页10条数据,计算总页数,然后循环显示每页数据。我们使用List模拟从数据库中查询出的数据,startIndex和endIndex分别表示每页数据的起始和结束位置,在循环中输出每页数据。
希望这个代码可以帮助到你!