mirror of
https://gitee.com/chinabugotech/hutool.git
synced 2025-05-09 23:51:34 +08:00
fix code
This commit is contained in:
parent
1a0ae09047
commit
a22f4d686a
@ -158,17 +158,6 @@ public class CalendarUtil {
|
||||
return DateModifier.modify(calendar, dateField.getValue(), DateModifier.ModifyType.ROUND);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改日期为某个时间字段结束时间
|
||||
*
|
||||
* @param calendar {@link Calendar}
|
||||
* @param dateField 保留到的时间字段,如定义为 {@link DateField#SECOND},表示这个字段不变,这个字段以下字段全部取最大值
|
||||
* @return 原{@link Calendar}
|
||||
*/
|
||||
public static Calendar ceiling(final Calendar calendar, final DateField dateField) {
|
||||
return DateModifier.modify(calendar, dateField.getValue(), DateModifier.ModifyType.CEILING);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改日期为某个时间字段结束时间<br>
|
||||
* 可选是否归零毫秒。
|
||||
@ -200,12 +189,13 @@ public class CalendarUtil {
|
||||
/**
|
||||
* 修改秒级别的结束时间,即毫秒设置为999
|
||||
*
|
||||
* @param calendar 日期 {@link Calendar}
|
||||
* @param calendar 日期 {@link Calendar}
|
||||
* @param truncateMillisecond 是否毫秒归零
|
||||
* @return {@link Calendar}
|
||||
* @since 4.6.2
|
||||
*/
|
||||
public static Calendar endOfSecond(final Calendar calendar) {
|
||||
return ceiling(calendar, DateField.SECOND);
|
||||
public static Calendar endOfSecond(final Calendar calendar, final boolean truncateMillisecond) {
|
||||
return ceiling(calendar, DateField.SECOND, truncateMillisecond);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -221,11 +211,12 @@ public class CalendarUtil {
|
||||
/**
|
||||
* 修改某小时的结束时间
|
||||
*
|
||||
* @param calendar 日期 {@link Calendar}
|
||||
* @param calendar 日期 {@link Calendar}
|
||||
* @param truncateMillisecond 是否毫秒归零
|
||||
* @return {@link Calendar}
|
||||
*/
|
||||
public static Calendar endOfHour(final Calendar calendar) {
|
||||
return ceiling(calendar, DateField.HOUR_OF_DAY);
|
||||
public static Calendar endOfHour(final Calendar calendar, final boolean truncateMillisecond) {
|
||||
return ceiling(calendar, DateField.HOUR_OF_DAY, truncateMillisecond);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -241,11 +232,12 @@ public class CalendarUtil {
|
||||
/**
|
||||
* 修改某分钟的结束时间
|
||||
*
|
||||
* @param calendar 日期 {@link Calendar}
|
||||
* @param calendar 日期 {@link Calendar}
|
||||
* @param truncateMillisecond 是否毫秒归零
|
||||
* @return {@link Calendar}
|
||||
*/
|
||||
public static Calendar endOfMinute(final Calendar calendar) {
|
||||
return ceiling(calendar, DateField.MINUTE);
|
||||
public static Calendar endOfMinute(final Calendar calendar, final boolean truncateMillisecond) {
|
||||
return ceiling(calendar, DateField.MINUTE, truncateMillisecond);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -261,11 +253,12 @@ public class CalendarUtil {
|
||||
/**
|
||||
* 修改某天的结束时间
|
||||
*
|
||||
* @param calendar 日期 {@link Calendar}
|
||||
* @param calendar 日期 {@link Calendar}
|
||||
* @param truncateMillisecond 是否毫秒归零
|
||||
* @return {@link Calendar}
|
||||
*/
|
||||
public static Calendar endOfDay(final Calendar calendar) {
|
||||
return ceiling(calendar, DateField.DAY_OF_MONTH);
|
||||
public static Calendar endOfDay(final Calendar calendar, final boolean truncateMillisecond) {
|
||||
return ceiling(calendar, DateField.DAY_OF_MONTH, truncateMillisecond);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -292,27 +285,18 @@ public class CalendarUtil {
|
||||
return truncate(calendar, DateField.WEEK_OF_MONTH);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改某周的结束时间,周日定为一周的结束
|
||||
*
|
||||
* @param calendar 日期 {@link Calendar}
|
||||
* @return {@link Calendar}
|
||||
*/
|
||||
public static Calendar endOfWeek(final Calendar calendar) {
|
||||
return endOfWeek(calendar, true);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改某周的结束时间
|
||||
*
|
||||
* @param calendar 日期 {@link Calendar}
|
||||
* @param isSundayAsLastDay 是否周日做为一周的最后一天(false表示周六做为最后一天)
|
||||
* @param calendar 日期 {@link Calendar}
|
||||
* @param isSundayAsLastDay 是否周日做为一周的最后一天(false表示周六做为最后一天)
|
||||
* @param truncateMillisecond 是否毫秒归零
|
||||
* @return {@link Calendar}
|
||||
*/
|
||||
public static Calendar endOfWeek(final Calendar calendar, final boolean isSundayAsLastDay) {
|
||||
public static Calendar endOfWeek(final Calendar calendar, final boolean isSundayAsLastDay, final boolean truncateMillisecond) {
|
||||
calendar.setFirstDayOfWeek(isSundayAsLastDay ? Calendar.MONDAY : Calendar.SUNDAY);
|
||||
// WEEK_OF_MONTH为上限的字段(不包括),实际调整的为DAY_OF_MONTH
|
||||
return ceiling(calendar, DateField.WEEK_OF_MONTH);
|
||||
return ceiling(calendar, DateField.WEEK_OF_MONTH, truncateMillisecond);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -328,11 +312,12 @@ public class CalendarUtil {
|
||||
/**
|
||||
* 修改某月的结束时间
|
||||
*
|
||||
* @param calendar 日期 {@link Calendar}
|
||||
* @param calendar 日期 {@link Calendar}
|
||||
* @param truncateMillisecond 是否毫秒归零
|
||||
* @return {@link Calendar}
|
||||
*/
|
||||
public static Calendar endOfMonth(final Calendar calendar) {
|
||||
return ceiling(calendar, DateField.MONTH);
|
||||
public static Calendar endOfMonth(final Calendar calendar, final boolean truncateMillisecond) {
|
||||
return ceiling(calendar, DateField.MONTH, truncateMillisecond);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -352,19 +337,20 @@ public class CalendarUtil {
|
||||
/**
|
||||
* 获取某季度的结束时间
|
||||
*
|
||||
* @param calendar 日期 {@link Calendar}
|
||||
* @param calendar 日期 {@link Calendar}
|
||||
* @param truncateMillisecond 是否毫秒归零
|
||||
* @return {@link Calendar}
|
||||
* @since 4.1.0
|
||||
*/
|
||||
@SuppressWarnings({"MagicConstant", "ConstantConditions"})
|
||||
public static Calendar endOfQuarter(final Calendar calendar) {
|
||||
public static Calendar endOfQuarter(final Calendar calendar, final boolean truncateMillisecond) {
|
||||
final int year = calendar.get(Calendar.YEAR);
|
||||
final int month = calendar.get(DateField.MONTH.getValue()) / 3 * 3 + 2;
|
||||
|
||||
final Calendar resultCal = Calendar.getInstance(calendar.getTimeZone());
|
||||
resultCal.set(year, month, Month.of(month).getLastDay(DateUtil.isLeapYear(year)));
|
||||
|
||||
return endOfDay(resultCal);
|
||||
return endOfDay(resultCal, truncateMillisecond);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -380,11 +366,12 @@ public class CalendarUtil {
|
||||
/**
|
||||
* 修改某年的结束时间
|
||||
*
|
||||
* @param calendar 日期 {@link Calendar}
|
||||
* @param calendar 日期 {@link Calendar}
|
||||
* @param truncateMillisecond 是否毫秒归零
|
||||
* @return {@link Calendar}
|
||||
*/
|
||||
public static Calendar endOfYear(final Calendar calendar) {
|
||||
return ceiling(calendar, DateField.YEAR);
|
||||
public static Calendar endOfYear(final Calendar calendar, final boolean truncateMillisecond) {
|
||||
return ceiling(calendar, DateField.YEAR, truncateMillisecond);
|
||||
}
|
||||
// endregion
|
||||
|
||||
@ -611,7 +598,7 @@ public class CalendarUtil {
|
||||
* @since 5.0.5
|
||||
*/
|
||||
public static LocalDateTime toLocalDateTime(final Calendar calendar) {
|
||||
if(null == calendar){
|
||||
if (null == calendar) {
|
||||
return null;
|
||||
}
|
||||
return LocalDateTime.ofInstant(calendar.toInstant(), calendar.getTimeZone().toZoneId());
|
||||
|
@ -91,7 +91,7 @@ public class DateModifier {
|
||||
break;
|
||||
}
|
||||
// 处理下一级别字段
|
||||
return modify(calendar, dateField + 1, modifyType);
|
||||
return modify(calendar, dateField + 1, modifyType, truncateMillisecond);
|
||||
}
|
||||
|
||||
final int endField = truncateMillisecond ? Calendar.SECOND : Calendar.MILLISECOND;
|
||||
|
@ -831,18 +831,6 @@ public class DateUtil {
|
||||
return new DateTime(CalendarUtil.round(CalendarUtil.calendar(date), dateField));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改日期为某个时间字段结束时间
|
||||
*
|
||||
* @param date {@link Date}
|
||||
* @param dateField 保留到的时间字段,如定义为 {@link DateField#SECOND},表示这个字段不变,这个字段以下字段全部取最大值
|
||||
* @return {@link DateTime}
|
||||
* @since 4.5.7
|
||||
*/
|
||||
public static DateTime ceiling(final Date date, final DateField dateField) {
|
||||
return new DateTime(CalendarUtil.ceiling(CalendarUtil.calendar(date), dateField));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改日期为某个时间字段结束时间<br>
|
||||
* 可选是否归零毫秒。
|
||||
@ -876,11 +864,12 @@ public class DateUtil {
|
||||
* 获取秒级别的结束时间,即毫秒设置为999
|
||||
*
|
||||
* @param date 日期
|
||||
* @param truncateMillisecond 是否毫秒归零
|
||||
* @return {@link DateTime}
|
||||
* @since 4.6.2
|
||||
*/
|
||||
public static DateTime endOfSecond(final Date date) {
|
||||
return new DateTime(CalendarUtil.endOfSecond(CalendarUtil.calendar(date)));
|
||||
public static DateTime endOfSecond(final Date date, final boolean truncateMillisecond) {
|
||||
return new DateTime(CalendarUtil.endOfSecond(CalendarUtil.calendar(date), truncateMillisecond));
|
||||
}
|
||||
|
||||
/**
|
||||
@ -897,10 +886,11 @@ public class DateUtil {
|
||||
* 获取某小时的结束时间
|
||||
*
|
||||
* @param date 日期
|
||||
* @param truncateMillisecond 是否毫秒归零
|
||||
* @return {@link DateTime}
|
||||
*/
|
||||
public static DateTime endOfHour(final Date date) {
|
||||
return new DateTime(CalendarUtil.endOfHour(CalendarUtil.calendar(date)));
|
||||
public static DateTime endOfHour(final Date date, final boolean truncateMillisecond) {
|
||||
return new DateTime(CalendarUtil.endOfHour(CalendarUtil.calendar(date), truncateMillisecond));
|
||||
}
|
||||
|
||||
/**
|
||||
@ -917,10 +907,11 @@ public class DateUtil {
|
||||
* 获取某分钟的结束时间
|
||||
*
|
||||
* @param date 日期
|
||||
* @param truncateMillisecond 是否毫秒归零
|
||||
* @return {@link DateTime}
|
||||
*/
|
||||
public static DateTime endOfMinute(final Date date) {
|
||||
return new DateTime(CalendarUtil.endOfMinute(CalendarUtil.calendar(date)));
|
||||
public static DateTime endOfMinute(final Date date, final boolean truncateMillisecond) {
|
||||
return new DateTime(CalendarUtil.endOfMinute(CalendarUtil.calendar(date), truncateMillisecond));
|
||||
}
|
||||
|
||||
/**
|
||||
@ -937,10 +928,11 @@ public class DateUtil {
|
||||
* 获取某天的结束时间
|
||||
*
|
||||
* @param date 日期
|
||||
* @param truncateMillisecond 是否毫秒归零
|
||||
* @return {@link DateTime}
|
||||
*/
|
||||
public static DateTime endOfDay(final Date date) {
|
||||
return new DateTime(CalendarUtil.endOfDay(CalendarUtil.calendar(date)));
|
||||
public static DateTime endOfDay(final Date date, final boolean truncateMillisecond) {
|
||||
return new DateTime(CalendarUtil.endOfDay(CalendarUtil.calendar(date), truncateMillisecond));
|
||||
}
|
||||
|
||||
/**
|
||||
@ -965,26 +957,17 @@ public class DateUtil {
|
||||
return new DateTime(CalendarUtil.beginOfWeek(CalendarUtil.calendar(date), isMondayAsFirstDay));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取某周的结束时间,周日定为一周的结束
|
||||
*
|
||||
* @param date 日期
|
||||
* @return {@link DateTime}
|
||||
*/
|
||||
public static DateTime endOfWeek(final Date date) {
|
||||
return new DateTime(CalendarUtil.endOfWeek(CalendarUtil.calendar(date)));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取某周的结束时间
|
||||
*
|
||||
* @param date 日期
|
||||
* @param isSundayAsLastDay 是否周日做为一周的最后一天(false表示周六做为最后一天)
|
||||
* @param truncateMillisecond 是否毫秒归零
|
||||
* @return {@link DateTime}
|
||||
* @since 5.4.0
|
||||
*/
|
||||
public static DateTime endOfWeek(final Date date, final boolean isSundayAsLastDay) {
|
||||
return new DateTime(CalendarUtil.endOfWeek(CalendarUtil.calendar(date), isSundayAsLastDay));
|
||||
public static DateTime endOfWeek(final Date date, final boolean isSundayAsLastDay, final boolean truncateMillisecond) {
|
||||
return new DateTime(CalendarUtil.endOfWeek(CalendarUtil.calendar(date), isSundayAsLastDay, truncateMillisecond));
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1001,10 +984,11 @@ public class DateUtil {
|
||||
* 获取某月的结束时间
|
||||
*
|
||||
* @param date 日期
|
||||
* @param truncateMillisecond 是否毫秒归零
|
||||
* @return {@link DateTime}
|
||||
*/
|
||||
public static DateTime endOfMonth(final Date date) {
|
||||
return new DateTime(CalendarUtil.endOfMonth(CalendarUtil.calendar(date)));
|
||||
public static DateTime endOfMonth(final Date date, final boolean truncateMillisecond) {
|
||||
return new DateTime(CalendarUtil.endOfMonth(CalendarUtil.calendar(date), truncateMillisecond));
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1021,10 +1005,11 @@ public class DateUtil {
|
||||
* 获取某季度的结束时间
|
||||
*
|
||||
* @param date 日期
|
||||
* @param truncateMillisecond 是否毫秒归零
|
||||
* @return {@link DateTime}
|
||||
*/
|
||||
public static DateTime endOfQuarter(final Date date) {
|
||||
return new DateTime(CalendarUtil.endOfQuarter(CalendarUtil.calendar(date)));
|
||||
public static DateTime endOfQuarter(final Date date, final boolean truncateMillisecond) {
|
||||
return new DateTime(CalendarUtil.endOfQuarter(CalendarUtil.calendar(date), truncateMillisecond));
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1041,10 +1026,11 @@ public class DateUtil {
|
||||
* 获取某年的结束时间
|
||||
*
|
||||
* @param date 日期
|
||||
* @param truncateMillisecond 是否毫秒归零
|
||||
* @return {@link DateTime}
|
||||
*/
|
||||
public static DateTime endOfYear(final Date date) {
|
||||
return new DateTime(CalendarUtil.endOfYear(CalendarUtil.calendar(date)));
|
||||
public static DateTime endOfYear(final Date date, final boolean truncateMillisecond) {
|
||||
return new DateTime(CalendarUtil.endOfYear(CalendarUtil.calendar(date), truncateMillisecond));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -85,52 +85,52 @@ public class DateModifierTest {
|
||||
final Date date = DateUtil.parse(dateStr);
|
||||
|
||||
// 毫秒
|
||||
DateTime begin = DateUtil.ceiling(date, DateField.MILLISECOND);
|
||||
DateTime begin = DateUtil.ceiling(date, DateField.MILLISECOND, false);
|
||||
Assertions.assertEquals(dateStr, begin.toString(DatePattern.NORM_DATETIME_MS_PATTERN));
|
||||
|
||||
// 秒
|
||||
begin = DateUtil.ceiling(date, DateField.SECOND);
|
||||
begin = DateUtil.ceiling(date, DateField.SECOND, false);
|
||||
Assertions.assertEquals("2017-03-01 22:33:23.999", begin.toString(DatePattern.NORM_DATETIME_MS_PATTERN));
|
||||
|
||||
// 分
|
||||
begin = DateUtil.ceiling(date, DateField.MINUTE);
|
||||
begin = DateUtil.ceiling(date, DateField.MINUTE, false);
|
||||
Assertions.assertEquals("2017-03-01 22:33:59.999", begin.toString(DatePattern.NORM_DATETIME_MS_PATTERN));
|
||||
|
||||
// 小时
|
||||
begin = DateUtil.ceiling(date, DateField.HOUR);
|
||||
begin = DateUtil.ceiling(date, DateField.HOUR, false);
|
||||
Assertions.assertEquals("2017-03-01 22:59:59.999", begin.toString(DatePattern.NORM_DATETIME_MS_PATTERN));
|
||||
begin = DateUtil.ceiling(date, DateField.HOUR_OF_DAY);
|
||||
begin = DateUtil.ceiling(date, DateField.HOUR_OF_DAY, false);
|
||||
Assertions.assertEquals("2017-03-01 22:59:59.999", begin.toString(DatePattern.NORM_DATETIME_MS_PATTERN));
|
||||
|
||||
// 上下午,原始日期是22点,上下午的结束就是23点
|
||||
begin = DateUtil.ceiling(date, DateField.AM_PM);
|
||||
begin = DateUtil.ceiling(date, DateField.AM_PM, false);
|
||||
Assertions.assertEquals("2017-03-01 23:59:59.999", begin.toString(DatePattern.NORM_DATETIME_MS_PATTERN));
|
||||
|
||||
// 天,day of xxx按照day处理
|
||||
begin = DateUtil.ceiling(date, DateField.DAY_OF_WEEK_IN_MONTH);
|
||||
begin = DateUtil.ceiling(date, DateField.DAY_OF_WEEK_IN_MONTH, false);
|
||||
Assertions.assertEquals("2017-03-01 23:59:59.999", begin.toString(DatePattern.NORM_DATETIME_MS_PATTERN));
|
||||
begin = DateUtil.ceiling(date, DateField.DAY_OF_WEEK);
|
||||
begin = DateUtil.ceiling(date, DateField.DAY_OF_WEEK, false);
|
||||
Assertions.assertEquals("2017-03-01 23:59:59.999", begin.toString(DatePattern.NORM_DATETIME_MS_PATTERN));
|
||||
begin = DateUtil.ceiling(date, DateField.DAY_OF_MONTH);
|
||||
begin = DateUtil.ceiling(date, DateField.DAY_OF_MONTH, false);
|
||||
Assertions.assertEquals("2017-03-01 23:59:59.999", begin.toString(DatePattern.NORM_DATETIME_MS_PATTERN));
|
||||
|
||||
// 星期
|
||||
begin = DateUtil.ceiling(date, DateField.WEEK_OF_MONTH);
|
||||
begin = DateUtil.ceiling(date, DateField.WEEK_OF_MONTH, false);
|
||||
Assertions.assertEquals("2017-03-05 23:59:59.999", begin.toString(DatePattern.NORM_DATETIME_MS_PATTERN));
|
||||
begin = DateUtil.ceiling(date, DateField.WEEK_OF_YEAR);
|
||||
begin = DateUtil.ceiling(date, DateField.WEEK_OF_YEAR, false);
|
||||
Assertions.assertEquals("2017-03-05 23:59:59.999", begin.toString(DatePattern.NORM_DATETIME_MS_PATTERN));
|
||||
|
||||
// 月
|
||||
begin = DateUtil.ceiling(date, DateField.MONTH);
|
||||
begin = DateUtil.ceiling(date, DateField.MONTH, false);
|
||||
Assertions.assertEquals("2017-03-31 23:59:59.999", begin.toString(DatePattern.NORM_DATETIME_MS_PATTERN));
|
||||
|
||||
// 年
|
||||
begin = DateUtil.ceiling(date, DateField.YEAR);
|
||||
begin = DateUtil.ceiling(date, DateField.YEAR, false);
|
||||
Assertions.assertEquals("2017-12-31 23:59:59.999", begin.toString(DatePattern.NORM_DATETIME_MS_PATTERN));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void roundTest(){
|
||||
public void roundTest() {
|
||||
// issues#I5M2I0
|
||||
final String dateStr = "2022-08-12 14:59:21.500";
|
||||
final Date date = DateUtil.parse(dateStr);
|
||||
|
@ -92,7 +92,7 @@ public class DateTimeTest {
|
||||
|
||||
// 精确到毫秒
|
||||
final DateTime endTime = new DateTime("2017-12-31 23:59:59.999", DatePattern.NORM_DATETIME_MS_FORMAT);
|
||||
dateTime = DateUtil.endOfQuarter(dateTime);
|
||||
dateTime = DateUtil.endOfQuarter(dateTime, false);
|
||||
Assertions.assertEquals(endTime, dateTime);
|
||||
}
|
||||
|
||||
|
@ -113,14 +113,14 @@ public class DateUtilTest {
|
||||
final Date beginOfDay = DateUtil.beginOfDay(date);
|
||||
Assertions.assertEquals("2017-03-01 00:00:00", beginOfDay.toString());
|
||||
// 一天的结束
|
||||
final Date endOfDay = DateUtil.endOfDay(date);
|
||||
final Date endOfDay = DateUtil.endOfDay(date, false);
|
||||
Assertions.assertEquals("2017-03-01 23:59:59", endOfDay.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void endOfDayTest() {
|
||||
final Date parse = DateUtil.parse("2020-05-31 00:00:00");
|
||||
Assertions.assertEquals("2020-05-31 23:59:59", DateUtil.endOfDay(parse).toString());
|
||||
Assertions.assertEquals("2020-05-31 23:59:59", DateUtil.endOfDay(parse, false).toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
@ -137,7 +137,7 @@ public class DateUtilTest {
|
||||
final Date date2 = DateUtil.parse(dateStr2);
|
||||
|
||||
|
||||
DateTime dateTime = DateUtil.ceiling(date2, DateField.MINUTE);
|
||||
DateTime dateTime = DateUtil.ceiling(date2, DateField.MINUTE, false);
|
||||
Assertions.assertEquals("2020-02-29 12:59:59.999", dateTime.toString(DatePattern.NORM_DATETIME_MS_PATTERN));
|
||||
|
||||
dateTime = DateUtil.ceiling(date2, DateField.MINUTE, true);
|
||||
@ -150,7 +150,7 @@ public class DateUtilTest {
|
||||
final Date date2 = DateUtil.parse(dateStr2);
|
||||
|
||||
|
||||
DateTime dateTime = DateUtil.ceiling(date2, DateField.DAY_OF_MONTH);
|
||||
DateTime dateTime = DateUtil.ceiling(date2, DateField.DAY_OF_MONTH, false);
|
||||
Assertions.assertEquals("2020-02-29 23:59:59.999", dateTime.toString(DatePattern.NORM_DATETIME_MS_PATTERN));
|
||||
|
||||
dateTime = DateUtil.ceiling(date2, DateField.DAY_OF_MONTH, true);
|
||||
@ -167,7 +167,7 @@ public class DateUtilTest {
|
||||
final Date beginOfWeek = DateUtil.beginOfWeek(date);
|
||||
Assertions.assertEquals("2017-02-27 00:00:00", beginOfWeek.toString());
|
||||
// 一周的结束
|
||||
final Date endOfWeek = DateUtil.endOfWeek(date);
|
||||
final Date endOfWeek = DateUtil.endOfWeek(date, true, false);
|
||||
Assertions.assertEquals("2017-03-05 23:59:59", endOfWeek.toString());
|
||||
|
||||
final Calendar calendar = CalendarUtil.calendar(date);
|
||||
@ -175,7 +175,7 @@ public class DateUtilTest {
|
||||
final Calendar begin = CalendarUtil.beginOfWeek(calendar);
|
||||
Assertions.assertEquals("2017-02-27 00:00:00", DateUtil.date(begin).toString());
|
||||
// 一周的结束
|
||||
final Calendar end = CalendarUtil.endOfWeek(calendar);
|
||||
final Calendar end = CalendarUtil.endOfWeek(calendar, true, false);
|
||||
Assertions.assertEquals("2017-03-05 23:59:59", DateUtil.date(end).toString());
|
||||
}
|
||||
|
||||
@ -188,7 +188,7 @@ public class DateUtilTest {
|
||||
Assertions.assertEquals("2020-03-08 00:00:00", DateUtil.date(begin).toString());
|
||||
|
||||
final Calendar calendar2 = date.toCalendar();
|
||||
final Calendar end = CalendarUtil.endOfWeek(calendar2, false);
|
||||
final Calendar end = CalendarUtil.endOfWeek(calendar2, false, false);
|
||||
Assertions.assertEquals("2020-03-14 23:59:59", DateUtil.date(end).toString());
|
||||
}
|
||||
|
||||
@ -743,14 +743,14 @@ public class DateUtilTest {
|
||||
public void endOfYearTest() {
|
||||
final DateTime date = DateUtil.now();
|
||||
date.setField(DateField.YEAR, 2019);
|
||||
final DateTime endOfYear = DateUtil.endOfYear(date);
|
||||
final DateTime endOfYear = DateUtil.endOfYear(date, false);
|
||||
Assertions.assertEquals("2019-12-31 23:59:59", endOfYear.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void endOfQuarterTest() {
|
||||
final Date date = DateUtil.endOfQuarter(
|
||||
DateUtil.parse("2020-05-31 00:00:00"));
|
||||
DateUtil.parse("2020-05-31 00:00:00"), false);
|
||||
|
||||
Assertions.assertEquals("2020-06-30 23:59:59", DateUtil.format(date, "yyyy-MM-dd HH:mm:ss"));
|
||||
}
|
||||
@ -762,7 +762,7 @@ public class DateUtilTest {
|
||||
|
||||
final DateTime startOfWeek = DateUtil.beginOfWeek(now);
|
||||
Assertions.assertEquals("2019-09-09 00:00:00", startOfWeek.toString());
|
||||
final DateTime endOfWeek = DateUtil.endOfWeek(now);
|
||||
final DateTime endOfWeek = DateUtil.endOfWeek(now, true, false);
|
||||
Assertions.assertEquals("2019-09-15 23:59:59", endOfWeek.toString());
|
||||
|
||||
final long between = DateUtil.between(endOfWeek, startOfWeek, DateUnit.DAY);
|
||||
|
@ -50,7 +50,7 @@ public class CronPatternUtil {
|
||||
* @return 日期列表
|
||||
*/
|
||||
public static List<Date> matchedDates(final String patternStr, final Date start, final int count) {
|
||||
return matchedDates(patternStr, start, DateUtil.endOfYear(start), count);
|
||||
return matchedDates(patternStr, start, DateUtil.endOfYear(start, false), count);
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
x
Reference in New Issue
Block a user