From db108e1ca9a03e8dbdb6ab835b094d6ca51e88b0 Mon Sep 17 00:00:00 2001 From: Looly Date: Thu, 9 Feb 2023 20:31:17 +0800 Subject: [PATCH] =?UTF-8?q?DateUtil.date=E6=96=B9=E6=B3=95=E7=BB=9F?= =?UTF-8?q?=E4=B8=80=E4=BF=AE=E6=94=B9=E8=A7=84=E5=88=99=EF=BC=8C=E4=BC=A0?= =?UTF-8?q?=E5=85=A5null=E8=BF=94=E5=9B=9Enull?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 1 + .../main/java/cn/hutool/core/date/DateUtil.java | 17 +++++++++++++---- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 030515ea9..1393947dc 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ * 【db 】 AbstractDb添加返回类型为PageResult的page重载方法(pr#916@Gitee) * 【core 】 DesensitizedUtil增加对IPv4和IPv6支持(issue#I6ABCS@Gitee) * 【core 】 针对CollUtil.subtract coll1 为只读集合的补偿(pr#2865@Github) +* 【core 】 DateUtil.date方法统一修改规则,传入null返回null(pr#2877@Github) ### 🐞Bug修复 * 【core 】 修复HexUtil.isHexNumber()对"-"的判断问题(issue#2857@Github) diff --git a/hutool-core/src/main/java/cn/hutool/core/date/DateUtil.java b/hutool-core/src/main/java/cn/hutool/core/date/DateUtil.java index 8a909081b..69a2114c8 100755 --- a/hutool-core/src/main/java/cn/hutool/core/date/DateUtil.java +++ b/hutool-core/src/main/java/cn/hutool/core/date/DateUtil.java @@ -68,11 +68,14 @@ public class DateUtil extends CalendarUtil { * {@link Date}类型时间转为{@link DateTime}
* 如果date本身为DateTime对象,则返回强转后的对象,否则新建一个DateTime对象 * - * @param date Long类型Date(Unix时间戳) + * @param date Long类型Date(Unix时间戳),如果传入{@code null},返回{@code null} * @return 时间对象 * @since 3.0.7 */ public static DateTime date(Date date) { + if (date == null) { + return null; + } if (date instanceof DateTime) { return (DateTime) date; } @@ -82,11 +85,14 @@ public class DateUtil extends CalendarUtil { /** * 根据已有{@link Date} 产生新的{@link DateTime}对象 * - * @param date Date对象 + * @param date Date对象,如果传入{@code null},返回{@code null} * @return {@link DateTime}对象 * @since 4.3.1 */ public static DateTime dateNew(Date date) { + if (date == null) { + return null; + } return new DateTime(date); } @@ -105,10 +111,13 @@ public class DateUtil extends CalendarUtil { * {@link Calendar}类型时间转为{@link DateTime}
* 始终根据已有{@link Calendar} 产生新的{@link DateTime}对象 * - * @param calendar {@link Calendar} + * @param calendar {@link Calendar},如果传入{@code null},返回{@code null} * @return 时间对象 */ public static DateTime date(Calendar calendar) { + if (calendar == null) { + return null; + } return new DateTime(calendar); } @@ -116,7 +125,7 @@ public class DateUtil extends CalendarUtil { * {@link TemporalAccessor}类型时间转为{@link DateTime}
* 始终根据已有{@link TemporalAccessor} 产生新的{@link DateTime}对象 * - * @param temporalAccessor {@link TemporalAccessor},常用子类: {@link LocalDateTime}、 LocalDate + * @param temporalAccessor {@link TemporalAccessor},常用子类: {@link LocalDateTime}、 LocalDate,如果传入{@code null},返回{@code null} * @return 时间对象 * @since 5.0.0 */