diff --git a/CHANGELOG.md b/CHANGELOG.md index c7f0577c4..44a90222b 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,15 +3,14 @@ ------------------------------------------------------------------------------------------------------------- -# 6.0.0.M1 (2022-08-27) +# 6.0.0.M1 (2022-10-09) ### 计划实现 * 【poi 】 PDF相关(基于PdfBox) * 【poi 】 HTML、DOCX转换相关 * 【poi 】 Markdown相关(如HTML转换等),基于commonmark-java * 【db 】 增加DDL封装 -* 【json 】 实现自定义的类型转换,不影响全局的转换器 -* 【core 】 Functional接口重新定义 +* 【poi 】 CellUtil.getCellIfMergedRegion考虑添加缓存支持,增加最大和最小范围判断,减少遍历 ### ❌不兼容特性 diff --git a/hutool-poi/src/main/java/cn/hutool/poi/excel/cell/CellUtil.java b/hutool-poi/src/main/java/cn/hutool/poi/excel/cell/CellUtil.java index 33dd684ae..8694d0082 100644 --- a/hutool-poi/src/main/java/cn/hutool/poi/excel/cell/CellUtil.java +++ b/hutool-poi/src/main/java/cn/hutool/poi/excel/cell/CellUtil.java @@ -466,10 +466,7 @@ public class CellUtil { * @since 5.4.5 */ private static Cell getCellIfMergedRegion(final Sheet sheet, final int x, final int y) { - final int sheetMergeCount = sheet.getNumMergedRegions(); - CellRangeAddress ca; - for (int i = 0; i < sheetMergeCount; i++) { - ca = sheet.getMergedRegion(i); + for (final CellRangeAddress ca : sheet.getMergedRegions()) { if (ca.isInRange(y, x)) { return SheetUtil.getCell(sheet, ca.getFirstRow(), ca.getFirstColumn()); }