diff --git a/CHANGELOG.md b/CHANGELOG.md
index 97a428e88..332b8d634 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -13,6 +13,7 @@
* 【cache 】 CacheObj的isExpired()逻辑修改(issue#1295@Github)
* 【json 】 JSONStrFormater改为JSONStrFormatter
* 【dfa 】 增加FoundWord(pr#1290@Github)
+* 【core 】 增加Segment(pr#1290@Github)
### Bug修复
* 【cache 】 修复Cache中get重复misCount计数问题(issue#1281@Github)
diff --git a/hutool-core/src/main/java/cn/hutool/core/util/PageUtil.java b/hutool-core/src/main/java/cn/hutool/core/util/PageUtil.java
index 59670070d..d56e95234 100644
--- a/hutool-core/src/main/java/cn/hutool/core/util/PageUtil.java
+++ b/hutool-core/src/main/java/cn/hutool/core/util/PageUtil.java
@@ -1,5 +1,8 @@
package cn.hutool.core.util;
+import cn.hutool.core.lang.DefaultSegment;
+import cn.hutool.core.lang.Segment;
+
/**
* 分页工具类
*
@@ -135,6 +138,35 @@ public class PageUtil {
return new int[]{start, getEndByStart(start, pageSize)};
}
+ /**
+ * 将页数和每页条目数转换为开始位置和结束位置
+ * 此方法用于包括结束位置的分页方法
+ * 例如:
+ *
+ *
+ * 页码:0,每页10 =》 [0, 10] + * 页码:1,每页10 =》 [10, 20] + * …… + *+ * + *
+ * 当{@link #setFirstPageNo(int)}设置为1时: + *
+ * 页码:1,每页10 =》 [0, 10] + * 页码:2,每页10 =》 [10, 20] + * …… + *+ * + * @param pageNo 页码(从0计数) + * @param pageSize 每页条目数 + * @return {@link Segment} + * @since 5.5.3 + */ + public static Segment