mirror of
https://gitee.com/chinabugotech/hutool.git
synced 2025-05-09 23:51:34 +08:00
fix code
This commit is contained in:
parent
e611adc884
commit
569512fb56
@ -8,7 +8,7 @@ import cn.hutool.core.collection.partition.RandomAccessPartition;
|
||||
import cn.hutool.core.comparator.PinyinComparator;
|
||||
import cn.hutool.core.comparator.PropertyComparator;
|
||||
import cn.hutool.core.lang.Assert;
|
||||
import cn.hutool.core.math.PageInfo;
|
||||
import cn.hutool.core.lang.page.PageInfo;
|
||||
import cn.hutool.core.util.ArrayUtil;
|
||||
import cn.hutool.core.util.ObjUtil;
|
||||
|
||||
|
@ -1,12 +1,13 @@
|
||||
package cn.hutool.core.math;
|
||||
package cn.hutool.core.lang.page;
|
||||
|
||||
public class NavigatePageInfo extends PageInfo{
|
||||
public class NavigatePageInfo extends PageInfo {
|
||||
|
||||
private final int navigatePages = 8; //导航页码数
|
||||
private final int navigatePages; //导航页码数
|
||||
private int[] navigatePageNumbers; //所有导航页号
|
||||
|
||||
public NavigatePageInfo(final int total, final int pageSize) {
|
||||
public NavigatePageInfo(final int total, final int pageSize, int navigatePages) {
|
||||
super(total, pageSize);
|
||||
this.navigatePages = navigatePages;
|
||||
|
||||
//基本参数设定之后进行导航页面的计算
|
||||
calcNavigatePageNumbers();
|
||||
@ -22,17 +23,30 @@ public class NavigatePageInfo extends PageInfo{
|
||||
}
|
||||
|
||||
public String toString() {
|
||||
final StringBuilder str = new StringBuilder(super.toString());
|
||||
str.append(", {navigatePageNumbers=");
|
||||
final int len = navigatePageNumbers.length;
|
||||
if (len > 0) str.append(navigatePageNumbers[0]);
|
||||
for (int i = 1; i < len; i++) {
|
||||
str.append(" ").append(navigatePageNumbers[i]);
|
||||
final StringBuilder str = new StringBuilder();
|
||||
|
||||
if(false == isFirstPage()){
|
||||
str.append("<< ");
|
||||
}
|
||||
if (navigatePageNumbers.length > 0) {
|
||||
str.append(wrap(navigatePageNumbers[0]));
|
||||
}
|
||||
for (int i = 1; i < navigatePageNumbers.length; i++) {
|
||||
str.append(" ").append(wrap(navigatePageNumbers[i]));
|
||||
}
|
||||
if(false == isLastPage()){
|
||||
str.append(" >>");
|
||||
}
|
||||
str.append("}");
|
||||
return str.toString();
|
||||
}
|
||||
|
||||
private String wrap(final int pageNumber){
|
||||
if(this.pageNo == pageNumber){
|
||||
return "[" + pageNumber + "]";
|
||||
}
|
||||
return String.valueOf(pageNumber);
|
||||
}
|
||||
|
||||
/**
|
||||
* 计算导航页
|
||||
*/
|
@ -1,4 +1,4 @@
|
||||
package cn.hutool.core.math;
|
||||
package cn.hutool.core.lang.page;
|
||||
|
||||
import cn.hutool.core.lang.Assert;
|
||||
import cn.hutool.core.lang.DefaultSegment;
|
||||
@ -227,7 +227,8 @@ public class PageInfo {
|
||||
|
||||
/**
|
||||
* 设置首页编号,即以数字几为第一页标志<br>
|
||||
* 如设置0,则0表示第一页,1表示第二页
|
||||
* 如设置0,则0表示第一页,1表示第二页<br>
|
||||
* 设置此参数后,须调用{@link #setPageNo(int)} 重新设置当前页的页码
|
||||
*
|
||||
* @param firstPageNo 首页编号
|
||||
* @return this
|
||||
@ -238,7 +239,9 @@ public class PageInfo {
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置当前页码
|
||||
* 设置当前页码,具体这个页码代表实际页,取决于{@link #setFirstPageNo(int)}设置的值。
|
||||
* 例如当{@link #setFirstPageNo(int)}设置为1时,1表示首页;设置为0时,0表示首页,依次类推。<br>
|
||||
* 当设置页码小于{@link #getFirstPageNo()}值时,始终为{@link #getFirstPageNo()}
|
||||
*
|
||||
* @param pageNo 当前页码
|
||||
* @return this
|
||||
@ -251,7 +254,8 @@ public class PageInfo {
|
||||
}
|
||||
|
||||
/**
|
||||
* 下一页,即当前页码+1
|
||||
* 下一页,即当前页码+1<br>
|
||||
* 当超过末页时,此方法指向的页码值始终为{@link #getPages()} + 1,即最后一页后的空白页。
|
||||
*
|
||||
* @return this
|
||||
*/
|
||||
@ -264,7 +268,7 @@ public class PageInfo {
|
||||
*
|
||||
* @return this
|
||||
*/
|
||||
public PageInfo PreviousPage() {
|
||||
public PageInfo previousPage() {
|
||||
return setPageNo(this.pageNo - 1);
|
||||
}
|
||||
|
@ -0,0 +1,10 @@
|
||||
/**
|
||||
* 提供分页信息封装,主要包括:
|
||||
* <ul>
|
||||
* <li>{@link cn.hutool.core.lang.page.PageInfo}: 提供分页信息。</li>
|
||||
* <li>{@link cn.hutool.core.lang.page.NavigatePageInfo}: 提供分页导航信息。</li>
|
||||
* </ul>
|
||||
*
|
||||
* @author looly
|
||||
*/
|
||||
package cn.hutool.core.lang.page;
|
@ -2,7 +2,7 @@ package cn.hutool.core.collection;
|
||||
|
||||
import cn.hutool.core.date.StopWatch;
|
||||
import cn.hutool.core.lang.Console;
|
||||
import cn.hutool.core.math.PageInfo;
|
||||
import cn.hutool.core.lang.page.PageInfo;
|
||||
import cn.hutool.core.util.RandomUtil;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
@ -0,0 +1,37 @@
|
||||
package cn.hutool.core.lang.page;
|
||||
|
||||
import org.junit.Assert;
|
||||
import org.junit.Test;
|
||||
|
||||
public class NavigatePageInfoTest {
|
||||
|
||||
@Test
|
||||
public void naviTest1(){
|
||||
// 首页
|
||||
final NavigatePageInfo navigatePageInfo = new NavigatePageInfo(10, 2, 6);
|
||||
Assert.assertEquals("[1] 2 3 4 5 >>", navigatePageInfo.toString());
|
||||
|
||||
// 中间页
|
||||
navigatePageInfo.nextPage();
|
||||
Assert.assertEquals("<< 1 [2] 3 4 5 >>", navigatePageInfo.toString());
|
||||
|
||||
// 尾页
|
||||
navigatePageInfo.setPageNo(5);
|
||||
Assert.assertEquals("<< 1 2 3 4 [5]", navigatePageInfo.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void naviTest2(){
|
||||
// 首页
|
||||
final NavigatePageInfo navigatePageInfo = new NavigatePageInfo(10, 2, 4);
|
||||
Assert.assertEquals("[1] 2 3 4 >>", navigatePageInfo.toString());
|
||||
|
||||
// 中间页
|
||||
navigatePageInfo.nextPage();
|
||||
Assert.assertEquals("<< 1 [2] 3 4 >>", navigatePageInfo.toString());
|
||||
|
||||
// 尾页
|
||||
navigatePageInfo.setPageNo(5);
|
||||
Assert.assertEquals("<< 2 3 4 [5]", navigatePageInfo.toString());
|
||||
}
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
package cn.hutool.core.math;
|
||||
package cn.hutool.core.lang.page;
|
||||
|
||||
import org.junit.Assert;
|
||||
import org.junit.Test;
|
@ -0,0 +1,48 @@
|
||||
package cn.hutool.core.tree;
|
||||
|
||||
import cn.hutool.core.lang.Assert;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class IssueI6NR2ZTest {
|
||||
@Test
|
||||
public void getNodeTest() {
|
||||
final List<TreeNode<Integer>> list = new ArrayList<>();
|
||||
|
||||
final TreeNode<Integer> treeNode1 = new TreeNode<>();
|
||||
treeNode1.setId(1);
|
||||
treeNode1.setParentId(0);
|
||||
list.add(treeNode1);
|
||||
|
||||
final TreeNode<Integer> treeNode2 = new TreeNode<>();
|
||||
treeNode2.setId(2);
|
||||
treeNode2.setParentId(1);
|
||||
list.add(treeNode2);
|
||||
|
||||
final TreeNode<Integer> treeNode3 = new TreeNode<>();
|
||||
treeNode3.setId(3);
|
||||
treeNode3.setParentId(1);
|
||||
list.add(treeNode3);
|
||||
|
||||
final TreeNode<Integer> treeNode4 = new TreeNode<>();
|
||||
treeNode4.setId(21);
|
||||
treeNode4.setParentId(2);
|
||||
list.add(treeNode4);
|
||||
|
||||
final TreeNode<Integer> treeNode5 = new TreeNode<>();
|
||||
treeNode5.setId(31);
|
||||
treeNode5.setParentId(3);
|
||||
list.add(treeNode5);
|
||||
|
||||
final TreeNode<Integer> treeNode6 = new TreeNode<>();
|
||||
treeNode6.setId(211);
|
||||
treeNode6.setParentId(21);
|
||||
list.add(treeNode6);
|
||||
|
||||
final List<MapTree<Integer>> build = TreeUtil.build(list);
|
||||
final MapTree<Integer> node = TreeUtil.getNode(build.get(0), 31);
|
||||
Assert.notNull(node);
|
||||
}
|
||||
}
|
@ -1,7 +1,7 @@
|
||||
package cn.hutool.db;
|
||||
|
||||
import cn.hutool.core.lang.Segment;
|
||||
import cn.hutool.core.math.PageInfo;
|
||||
import cn.hutool.core.lang.page.PageInfo;
|
||||
import cn.hutool.core.util.ArrayUtil;
|
||||
import cn.hutool.db.sql.Order;
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
package cn.hutool.db;
|
||||
|
||||
import cn.hutool.core.math.PageInfo;
|
||||
import cn.hutool.core.lang.page.PageInfo;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user