From 47aca4b2b5563e149a077dbd34ff4df7e4e917c6 Mon Sep 17 00:00:00 2001 From: wqh <1241409260@qq.com> Date: Thu, 21 Aug 2025 09:12:51 +0800 Subject: [PATCH] =?UTF-8?q?fix:4006=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/hutool/cron/pattern/matcher/BoolArrayMatcher.java | 1 + .../cn/hutool/cron/pattern/matcher/DayOfMonthMatcher.java | 1 - .../cn/hutool/cron/pattern/matcher/PatternMatcher.java | 8 ++++---- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/hutool-cron/src/main/java/cn/hutool/cron/pattern/matcher/BoolArrayMatcher.java b/hutool-cron/src/main/java/cn/hutool/cron/pattern/matcher/BoolArrayMatcher.java index 84ac39a8f..d60909ec5 100644 --- a/hutool-cron/src/main/java/cn/hutool/cron/pattern/matcher/BoolArrayMatcher.java +++ b/hutool-cron/src/main/java/cn/hutool/cron/pattern/matcher/BoolArrayMatcher.java @@ -35,6 +35,7 @@ public class BoolArrayMatcher implements PartMatcher { } this.minValue = min; } + @Override public boolean match(Integer value) { if (null == value || value >= bValues.length) { diff --git a/hutool-cron/src/main/java/cn/hutool/cron/pattern/matcher/DayOfMonthMatcher.java b/hutool-cron/src/main/java/cn/hutool/cron/pattern/matcher/DayOfMonthMatcher.java index 03297001f..c1deb0f1c 100644 --- a/hutool-cron/src/main/java/cn/hutool/cron/pattern/matcher/DayOfMonthMatcher.java +++ b/hutool-cron/src/main/java/cn/hutool/cron/pattern/matcher/DayOfMonthMatcher.java @@ -50,7 +50,6 @@ public class DayOfMonthMatcher extends BoolArrayMatcher { return value == Month.getLastDay(month - 1, isLeapYear); } - public boolean isLast() { return match(31); } diff --git a/hutool-cron/src/main/java/cn/hutool/cron/pattern/matcher/PatternMatcher.java b/hutool-cron/src/main/java/cn/hutool/cron/pattern/matcher/PatternMatcher.java index 30050727f..8ffb80b9a 100755 --- a/hutool-cron/src/main/java/cn/hutool/cron/pattern/matcher/PatternMatcher.java +++ b/hutool-cron/src/main/java/cn/hutool/cron/pattern/matcher/PatternMatcher.java @@ -193,8 +193,8 @@ public class PatternMatcher { if (i == Part.DAY_OF_MONTH.ordinal() && matchers[i] instanceof DayOfMonthMatcher && ((DayOfMonthMatcher) matchers[i]).isLastDay(values[i],values[i+1],isLeapYear(values[Part.YEAR.ordinal()]))) { - int newMonth = values[Part.MONTH.ordinal()]; - int newYear = values[Part.YEAR.ordinal()]; + int newMonth = newValues[Part.MONTH.ordinal()]; + int newYear = newValues[Part.YEAR.ordinal()]; nextValue = getLastDay(newMonth, newYear); } else { nextValue = matchers[i].nextAfter(values[i]); @@ -227,8 +227,8 @@ public class PatternMatcher { } else if (i == Part.DAY_OF_MONTH.ordinal() && matchers[i] instanceof DayOfMonthMatcher && ((DayOfMonthMatcher) matchers[i]).isLastDay(values[i],values[i+1],isLeapYear(values[Part.YEAR.ordinal()]))) { - int newMonth = values[Part.MONTH.ordinal()]; - int newYear = values[Part.YEAR.ordinal()]; + int newMonth = newValues[Part.MONTH.ordinal()]; + int newYear = newValues[Part.YEAR.ordinal()]; nextValue = getLastDay(newMonth, newYear); } else { nextValue = matchers[i].nextAfter(values[i] + 1);