From 05e453b23c9b6c997f5f94a47d2bb0c4909e24ef Mon Sep 17 00:00:00 2001 From: Looly Date: Thu, 4 Jul 2024 11:59:43 +0800 Subject: [PATCH] fix code --- .../core/convert/impl/CalendarConverter.java | 9 +- .../dromara/hutool/core/date/DateBetween.java | 8 +- .../hutool/core/date/DateModifier.java | 10 +- .../dromara/hutool/core/date/DateUtil.java | 97 +++++++------------ .../org/dromara/hutool/core/date/Zodiac.java | 4 +- .../hutool/core/date/DateUtilTest.java | 10 +- .../hutool/core/date/Issue3011Test.java | 2 +- .../hutool/core/lang/range/RangeTest.java | 4 +- 8 files changed, 57 insertions(+), 87 deletions(-) diff --git a/hutool-core/src/main/java/org/dromara/hutool/core/convert/impl/CalendarConverter.java b/hutool-core/src/main/java/org/dromara/hutool/core/convert/impl/CalendarConverter.java index 327166d6e..0d4a986f5 100644 --- a/hutool-core/src/main/java/org/dromara/hutool/core/convert/impl/CalendarConverter.java +++ b/hutool-core/src/main/java/org/dromara/hutool/core/convert/impl/CalendarConverter.java @@ -13,6 +13,7 @@ package org.dromara.hutool.core.convert.impl; import org.dromara.hutool.core.convert.AbstractConverter; +import org.dromara.hutool.core.date.CalendarUtil; import org.dromara.hutool.core.date.DateUtil; import org.dromara.hutool.core.text.StrUtil; @@ -54,21 +55,21 @@ public class CalendarConverter extends AbstractConverter { protected Calendar convertInternal(final Class targetClass, final Object value) { // Handle Date if (value instanceof Date) { - return DateUtil.calendar((Date)value); + return CalendarUtil.calendar((Date)value); } // Handle Long if (value instanceof Long) { //此处使用自动拆装箱 - return DateUtil.calendar((Long)value); + return CalendarUtil.calendar((Long)value); } if(value instanceof XMLGregorianCalendar){ - return DateUtil.calendar((XMLGregorianCalendar) value); + return CalendarUtil.calendar((XMLGregorianCalendar) value); } final String valueStr = convertToStr(value); - return DateUtil.calendar(StrUtil.isBlank(format) ? DateUtil.parse(valueStr) : DateUtil.parse(valueStr, format)); + return CalendarUtil.calendar(StrUtil.isBlank(format) ? DateUtil.parse(valueStr) : DateUtil.parse(valueStr, format)); } } diff --git a/hutool-core/src/main/java/org/dromara/hutool/core/date/DateBetween.java b/hutool-core/src/main/java/org/dromara/hutool/core/date/DateBetween.java index b2bfa37c8..5ee868de1 100644 --- a/hutool-core/src/main/java/org/dromara/hutool/core/date/DateBetween.java +++ b/hutool-core/src/main/java/org/dromara/hutool/core/date/DateBetween.java @@ -117,8 +117,8 @@ public class DateBetween implements Serializable { * @since 3.0.8 */ public long betweenMonth(final boolean isReset) { - final Calendar beginCal = DateUtil.calendar(begin); - final Calendar endCal = DateUtil.calendar(end); + final Calendar beginCal = CalendarUtil.calendar(begin); + final Calendar endCal = CalendarUtil.calendar(end); final int betweenYear = endCal.get(Calendar.YEAR) - beginCal.get(Calendar.YEAR); final int betweenMonthOfYear = endCal.get(Calendar.MONTH) - beginCal.get(Calendar.MONTH); @@ -144,8 +144,8 @@ public class DateBetween implements Serializable { * @since 3.0.8 */ public long betweenYear(final boolean isReset) { - final Calendar beginCal = DateUtil.calendar(begin); - final Calendar endCal = DateUtil.calendar(end); + final Calendar beginCal = CalendarUtil.calendar(begin); + final Calendar endCal = CalendarUtil.calendar(end); final int result = endCal.get(Calendar.YEAR) - beginCal.get(Calendar.YEAR); if (false == isReset) { diff --git a/hutool-core/src/main/java/org/dromara/hutool/core/date/DateModifier.java b/hutool-core/src/main/java/org/dromara/hutool/core/date/DateModifier.java index cb19906c2..5f6858b46 100644 --- a/hutool-core/src/main/java/org/dromara/hutool/core/date/DateModifier.java +++ b/hutool-core/src/main/java/org/dromara/hutool/core/date/DateModifier.java @@ -74,7 +74,7 @@ public class DateModifier { public static Calendar modify(final Calendar calendar, final int dateField, final ModifyType modifyType, final boolean truncateMillisecond) { // AM_PM上下午特殊处理 if (Calendar.AM_PM == dateField) { - final boolean isAM = DateUtil.isAM(calendar); + final boolean isAM = CalendarUtil.isAM(calendar); switch (modifyType) { case TRUNCATE: calendar.set(Calendar.HOUR_OF_DAY, isAM ? 0 : 12); @@ -141,14 +141,14 @@ public class DateModifier { switch (modifyType) { case TRUNCATE: - calendar.set(field, DateUtil.getBeginValue(calendar, field)); + calendar.set(field, CalendarUtil.getBeginValue(calendar, field)); break; case CEILING: - calendar.set(field, DateUtil.getEndValue(calendar, field)); + calendar.set(field, CalendarUtil.getEndValue(calendar, field)); break; case ROUND: - final int min = DateUtil.getBeginValue(calendar, field); - final int max = DateUtil.getEndValue(calendar, field); + final int min = CalendarUtil.getBeginValue(calendar, field); + final int max = CalendarUtil.getEndValue(calendar, field); final int href; if (Calendar.DAY_OF_WEEK == field) { // 星期特殊处理,假设周一是第一天,中间的为周四 diff --git a/hutool-core/src/main/java/org/dromara/hutool/core/date/DateUtil.java b/hutool-core/src/main/java/org/dromara/hutool/core/date/DateUtil.java index 6076ba73e..1cb166112 100644 --- a/hutool-core/src/main/java/org/dromara/hutool/core/date/DateUtil.java +++ b/hutool-core/src/main/java/org/dromara/hutool/core/date/DateUtil.java @@ -17,7 +17,9 @@ import org.dromara.hutool.core.comparator.CompareUtil; import org.dromara.hutool.core.date.format.DatePrinter; import org.dromara.hutool.core.date.format.FastDateFormat; import org.dromara.hutool.core.date.format.GlobalCustomFormat; -import org.dromara.hutool.core.date.format.parser.*; +import org.dromara.hutool.core.date.format.parser.GlobalRegexDateParser; +import org.dromara.hutool.core.date.format.parser.PositionDateParser; +import org.dromara.hutool.core.date.format.parser.TimeParser; import org.dromara.hutool.core.lang.Assert; import org.dromara.hutool.core.text.StrUtil; import org.dromara.hutool.core.text.split.SplitUtil; @@ -43,7 +45,7 @@ import java.util.stream.Collectors; * @see TimeUtil java8日志工具类 * @see DatePattern 日期常用格式工具类 */ -public class DateUtil extends CalendarUtil { +public class DateUtil { // region ----- date @@ -62,7 +64,7 @@ public class DateUtil extends CalendarUtil { * @return 当天开始的时间 */ public static DateTime today() { - return new DateTime(beginOfDay(Calendar.getInstance())); + return new DateTime(CalendarUtil.beginOfDay(Calendar.getInstance())); } /** @@ -501,7 +503,7 @@ public class DateUtil extends CalendarUtil { * @return Quarter ,类似于 20132 */ public static String yearAndQuarter(final Date date) { - return yearAndQuarter(calendar(date)); + return CalendarUtil.yearAndQuarter(CalendarUtil.calendar(date)); } // region ----- format @@ -764,43 +766,10 @@ public class DateUtil extends CalendarUtil { * @throws DateException if none of the date patterns were suitable * @since 5.3.11 */ - public static DateTime parse(final String str, final String... parsePatterns) throws DateException { + public static DateTime parseByPatterns(final String str, final String... parsePatterns) throws DateException { return date(CalendarUtil.parseByPatterns(str, parsePatterns)); } - /** - * 将日期字符串转换为{@link DateTime}对象,格式:
- *
    - *
  1. yyyy-MM-dd HH:mm:ss
  2. - *
  3. yyyy/MM/dd HH:mm:ss
  4. - *
  5. yyyy.MM.dd HH:mm:ss
  6. - *
  7. yyyy年MM月dd日 HH时mm分ss秒
  8. - *
  9. yyyy-MM-dd
  10. - *
  11. yyyy/MM/dd
  12. - *
  13. yyyy.MM.dd
  14. - *
  15. HH:mm:ss
  16. - *
  17. HH时mm分ss秒
  18. - *
  19. yyyy-MM-dd HH:mm
  20. - *
  21. yyyy-MM-dd HH:mm:ss.SSS
  22. - *
  23. yyyy-MM-dd HH:mm:ss.SSSSSS
  24. - *
  25. yyyyMMddHHmmss
  26. - *
  27. yyyyMMddHHmmssSSS
  28. - *
  29. yyyyMMdd
  30. - *
  31. EEE, dd MMM yyyy HH:mm:ss z
  32. - *
  33. EEE MMM dd HH:mm:ss zzz yyyy
  34. - *
  35. yyyy-MM-dd'T'HH:mm:ss'Z'
  36. - *
  37. yyyy-MM-dd'T'HH:mm:ss.SSS'Z'
  38. - *
  39. yyyy-MM-dd'T'HH:mm:ssZ
  40. - *
  41. yyyy-MM-dd'T'HH:mm:ss.SSSZ
  42. - *
- * - * @param dateCharSequence 日期字符串 - * @return 日期 - */ - public static DateTime parseDateTime(final CharSequence dateCharSequence) { - return date(parse(dateCharSequence)); - } - /** * 将日期字符串转换为{@link DateTime}对象,在转换过程中,如果字符串中有时区信息,表示是指定时区的时间
* 此时此方法会将时区转换为当前时区,时间戳会根据时区变化。
@@ -852,7 +821,7 @@ public class DateUtil extends CalendarUtil { * @since 4.5.7 */ public static DateTime truncate(final Date date, final DateField dateField) { - return new DateTime(truncate(calendar(date), dateField)); + return new DateTime(CalendarUtil.truncate(CalendarUtil.calendar(date), dateField)); } /** @@ -864,7 +833,7 @@ public class DateUtil extends CalendarUtil { * @since 4.5.7 */ public static DateTime round(final Date date, final DateField dateField) { - return new DateTime(round(calendar(date), dateField)); + return new DateTime(CalendarUtil.round(CalendarUtil.calendar(date), dateField)); } /** @@ -876,7 +845,7 @@ public class DateUtil extends CalendarUtil { * @since 4.5.7 */ public static DateTime ceiling(final Date date, final DateField dateField) { - return new DateTime(ceiling(calendar(date), dateField)); + return new DateTime(CalendarUtil.ceiling(CalendarUtil.calendar(date), dateField)); } /** @@ -894,7 +863,7 @@ public class DateUtil extends CalendarUtil { * @since 4.5.7 */ public static DateTime ceiling(final Date date, final DateField dateField, final boolean truncateMillisecond) { - return new DateTime(ceiling(calendar(date), dateField, truncateMillisecond)); + return new DateTime(CalendarUtil.ceiling(CalendarUtil.calendar(date), dateField, truncateMillisecond)); } /** @@ -905,7 +874,7 @@ public class DateUtil extends CalendarUtil { * @since 4.6.2 */ public static DateTime beginOfSecond(final Date date) { - return new DateTime(beginOfSecond(calendar(date))); + return new DateTime(CalendarUtil.beginOfSecond(CalendarUtil.calendar(date))); } /** @@ -916,7 +885,7 @@ public class DateUtil extends CalendarUtil { * @since 4.6.2 */ public static DateTime endOfSecond(final Date date) { - return new DateTime(endOfSecond(calendar(date))); + return new DateTime(CalendarUtil.endOfSecond(CalendarUtil.calendar(date))); } /** @@ -926,7 +895,7 @@ public class DateUtil extends CalendarUtil { * @return {@link DateTime} */ public static DateTime beginOfHour(final Date date) { - return new DateTime(beginOfHour(calendar(date))); + return new DateTime(CalendarUtil.beginOfHour(CalendarUtil.calendar(date))); } /** @@ -936,7 +905,7 @@ public class DateUtil extends CalendarUtil { * @return {@link DateTime} */ public static DateTime endOfHour(final Date date) { - return new DateTime(endOfHour(calendar(date))); + return new DateTime(CalendarUtil.endOfHour(CalendarUtil.calendar(date))); } /** @@ -946,7 +915,7 @@ public class DateUtil extends CalendarUtil { * @return {@link DateTime} */ public static DateTime beginOfMinute(final Date date) { - return new DateTime(beginOfMinute(calendar(date))); + return new DateTime(CalendarUtil.beginOfMinute(CalendarUtil.calendar(date))); } /** @@ -956,7 +925,7 @@ public class DateUtil extends CalendarUtil { * @return {@link DateTime} */ public static DateTime endOfMinute(final Date date) { - return new DateTime(endOfMinute(calendar(date))); + return new DateTime(CalendarUtil.endOfMinute(CalendarUtil.calendar(date))); } /** @@ -966,7 +935,7 @@ public class DateUtil extends CalendarUtil { * @return {@link DateTime} */ public static DateTime beginOfDay(final Date date) { - return new DateTime(beginOfDay(calendar(date))); + return new DateTime(CalendarUtil.beginOfDay(CalendarUtil.calendar(date))); } /** @@ -976,7 +945,7 @@ public class DateUtil extends CalendarUtil { * @return {@link DateTime} */ public static DateTime endOfDay(final Date date) { - return new DateTime(endOfDay(calendar(date))); + return new DateTime(CalendarUtil.endOfDay(CalendarUtil.calendar(date))); } /** @@ -986,7 +955,7 @@ public class DateUtil extends CalendarUtil { * @return {@link DateTime} */ public static DateTime beginOfWeek(final Date date) { - return new DateTime(beginOfWeek(calendar(date))); + return new DateTime(CalendarUtil.beginOfWeek(CalendarUtil.calendar(date))); } /** @@ -998,7 +967,7 @@ public class DateUtil extends CalendarUtil { * @since 5.4.0 */ public static DateTime beginOfWeek(final Date date, final boolean isMondayAsFirstDay) { - return new DateTime(beginOfWeek(calendar(date), isMondayAsFirstDay)); + return new DateTime(CalendarUtil.beginOfWeek(CalendarUtil.calendar(date), isMondayAsFirstDay)); } /** @@ -1008,7 +977,7 @@ public class DateUtil extends CalendarUtil { * @return {@link DateTime} */ public static DateTime endOfWeek(final Date date) { - return new DateTime(endOfWeek(calendar(date))); + return new DateTime(CalendarUtil.endOfWeek(CalendarUtil.calendar(date))); } /** @@ -1020,7 +989,7 @@ public class DateUtil extends CalendarUtil { * @since 5.4.0 */ public static DateTime endOfWeek(final Date date, final boolean isSundayAsLastDay) { - return new DateTime(endOfWeek(calendar(date), isSundayAsLastDay)); + return new DateTime(CalendarUtil.endOfWeek(CalendarUtil.calendar(date), isSundayAsLastDay)); } /** @@ -1030,7 +999,7 @@ public class DateUtil extends CalendarUtil { * @return {@link DateTime} */ public static DateTime beginOfMonth(final Date date) { - return new DateTime(beginOfMonth(calendar(date))); + return new DateTime(CalendarUtil.beginOfMonth(CalendarUtil.calendar(date))); } /** @@ -1040,7 +1009,7 @@ public class DateUtil extends CalendarUtil { * @return {@link DateTime} */ public static DateTime endOfMonth(final Date date) { - return new DateTime(endOfMonth(calendar(date))); + return new DateTime(CalendarUtil.endOfMonth(CalendarUtil.calendar(date))); } /** @@ -1050,7 +1019,7 @@ public class DateUtil extends CalendarUtil { * @return {@link DateTime} */ public static DateTime beginOfQuarter(final Date date) { - return new DateTime(beginOfQuarter(calendar(date))); + return new DateTime(CalendarUtil.beginOfQuarter(CalendarUtil.calendar(date))); } /** @@ -1060,7 +1029,7 @@ public class DateUtil extends CalendarUtil { * @return {@link DateTime} */ public static DateTime endOfQuarter(final Date date) { - return new DateTime(endOfQuarter(calendar(date))); + return new DateTime(CalendarUtil.endOfQuarter(CalendarUtil.calendar(date))); } /** @@ -1070,7 +1039,7 @@ public class DateUtil extends CalendarUtil { * @return {@link DateTime} */ public static DateTime beginOfYear(final Date date) { - return new DateTime(beginOfYear(calendar(date))); + return new DateTime(CalendarUtil.beginOfYear(CalendarUtil.calendar(date))); } /** @@ -1080,7 +1049,7 @@ public class DateUtil extends CalendarUtil { * @return {@link DateTime} */ public static DateTime endOfYear(final Date date) { - return new DateTime(endOfYear(calendar(date))); + return new DateTime(CalendarUtil.endOfYear(CalendarUtil.calendar(date))); } /** @@ -1483,7 +1452,7 @@ public class DateUtil extends CalendarUtil { if (date1 == null || date2 == null) { throw new IllegalArgumentException("The date must not be null"); } - return CalendarUtil.isSameDay(calendar(date1), calendar(date2)); + return CalendarUtil.isSameDay(CalendarUtil.calendar(date1), CalendarUtil.calendar(date2)); } /** @@ -1498,7 +1467,7 @@ public class DateUtil extends CalendarUtil { if (date1 == null || date2 == null) { throw new IllegalArgumentException("The date must not be null"); } - return CalendarUtil.isSameWeek(calendar(date1), calendar(date2), isMon); + return CalendarUtil.isSameWeek(CalendarUtil.calendar(date1), CalendarUtil.calendar(date2), isMon); } /** @@ -1513,7 +1482,7 @@ public class DateUtil extends CalendarUtil { if (date1 == null || date2 == null) { throw new IllegalArgumentException("The date must not be null"); } - return CalendarUtil.isSameMonth(calendar(date1), calendar(date2)); + return CalendarUtil.isSameMonth(CalendarUtil.calendar(date1), CalendarUtil.calendar(date2)); } @@ -1650,7 +1619,7 @@ public class DateUtil extends CalendarUtil { if (null == dateToCompare) { dateToCompare = now(); } - return age(birthday.getTime(), dateToCompare.getTime()); + return CalendarUtil.age(birthday.getTime(), dateToCompare.getTime()); } /** diff --git a/hutool-core/src/main/java/org/dromara/hutool/core/date/Zodiac.java b/hutool-core/src/main/java/org/dromara/hutool/core/date/Zodiac.java index 70e7360de..5a75af4b5 100644 --- a/hutool-core/src/main/java/org/dromara/hutool/core/date/Zodiac.java +++ b/hutool-core/src/main/java/org/dromara/hutool/core/date/Zodiac.java @@ -38,7 +38,7 @@ public class Zodiac { * @return 星座名 */ public static String getZodiac(final Date date) { - return getZodiac(DateUtil.calendar(date)); + return getZodiac(CalendarUtil.calendar(date)); } /** @@ -90,7 +90,7 @@ public class Zodiac { * @return 星座名 */ public static String getChineseZodiac(final Date date) { - return getChineseZodiac(DateUtil.calendar(date)); + return getChineseZodiac(CalendarUtil.calendar(date)); } /** diff --git a/hutool-core/src/test/java/org/dromara/hutool/core/date/DateUtilTest.java b/hutool-core/src/test/java/org/dromara/hutool/core/date/DateUtilTest.java index 1be1cb6f9..fda425535 100644 --- a/hutool-core/src/test/java/org/dromara/hutool/core/date/DateUtilTest.java +++ b/hutool-core/src/test/java/org/dromara/hutool/core/date/DateUtilTest.java @@ -170,12 +170,12 @@ public class DateUtilTest { final Date endOfWeek = DateUtil.endOfWeek(date); Assertions.assertEquals("2017-03-05 23:59:59", endOfWeek.toString()); - final Calendar calendar = DateUtil.calendar(date); + final Calendar calendar = CalendarUtil.calendar(date); // 一周的开始 - final Calendar begin = DateUtil.beginOfWeek(calendar); + final Calendar begin = CalendarUtil.beginOfWeek(calendar); Assertions.assertEquals("2017-02-27 00:00:00", DateUtil.date(begin).toString()); // 一周的结束 - final Calendar end = DateUtil.endOfWeek(calendar); + final Calendar end = CalendarUtil.endOfWeek(calendar); Assertions.assertEquals("2017-03-05 23:59:59", DateUtil.date(end).toString()); } @@ -184,11 +184,11 @@ public class DateUtilTest { final String beginStr = "2020-03-11"; final DateTime date = DateUtil.parse(beginStr); final Calendar calendar = Objects.requireNonNull(date).toCalendar(); - final Calendar begin = DateUtil.beginOfWeek(calendar, false); + final Calendar begin = CalendarUtil.beginOfWeek(calendar, false); Assertions.assertEquals("2020-03-08 00:00:00", DateUtil.date(begin).toString()); final Calendar calendar2 = date.toCalendar(); - final Calendar end = DateUtil.endOfWeek(calendar2, false); + final Calendar end = CalendarUtil.endOfWeek(calendar2, false); Assertions.assertEquals("2020-03-14 23:59:59", DateUtil.date(end).toString()); } diff --git a/hutool-core/src/test/java/org/dromara/hutool/core/date/Issue3011Test.java b/hutool-core/src/test/java/org/dromara/hutool/core/date/Issue3011Test.java index f09efc7b7..11909d69e 100644 --- a/hutool-core/src/test/java/org/dromara/hutool/core/date/Issue3011Test.java +++ b/hutool-core/src/test/java/org/dromara/hutool/core/date/Issue3011Test.java @@ -30,6 +30,6 @@ public class Issue3011Test { calendar2.set(2021, Calendar.FEBRUARY, 12); - Assertions.assertFalse(DateUtil.isSameMonth(calendar1, calendar2)); + Assertions.assertFalse(CalendarUtil.isSameMonth(calendar1, calendar2)); } } diff --git a/hutool-core/src/test/java/org/dromara/hutool/core/lang/range/RangeTest.java b/hutool-core/src/test/java/org/dromara/hutool/core/lang/range/RangeTest.java index 4aa783f00..45ba35444 100644 --- a/hutool-core/src/test/java/org/dromara/hutool/core/lang/range/RangeTest.java +++ b/hutool-core/src/test/java/org/dromara/hutool/core/lang/range/RangeTest.java @@ -33,8 +33,8 @@ public class RangeTest { @Test public void dateRangeTest() { - final DateTime start = DateUtil.parseDateTime("2017-01-01"); - final DateTime end = DateUtil.parseDateTime("2017-01-02"); + final DateTime start = DateUtil.parse("2017-01-01"); + final DateTime end = DateUtil.parse("2017-01-02"); final Range range = new Range<>(start, end, (current, end1, index) -> { if (current.isAfterOrEquals(end1)) {