|
@@ -5,14 +5,10 @@ import org.apache.commons.lang3.time.DateUtils;
|
5
|
5
|
import java.text.Format;
|
6
|
6
|
import java.text.ParseException;
|
7
|
7
|
import java.text.SimpleDateFormat;
|
8
|
|
-import java.time.LocalDate;
|
9
|
8
|
import java.time.LocalDateTime;
|
10
|
9
|
import java.time.ZoneId;
|
11
|
|
-import java.time.format.DateTimeFormatter;
|
12
|
|
-import java.time.temporal.WeekFields;
|
13
|
10
|
import java.util.Calendar;
|
14
|
11
|
import java.util.Date;
|
15
|
|
-import java.util.Locale;
|
16
|
12
|
|
17
|
13
|
import static cn.hutool.core.date.DateUtil.format;
|
18
|
14
|
|
|
@@ -198,6 +194,16 @@ public class DateUtil {
|
198
|
194
|
}
|
199
|
195
|
|
200
|
196
|
/**
|
|
197
|
+ * 获取下一分钟0秒的日期
|
|
198
|
+ *
|
|
199
|
+ * @return
|
|
200
|
+ */
|
|
201
|
+ public static Date getNextMinute() {
|
|
202
|
+ Date data = getCurrMinute();
|
|
203
|
+ return DateUtils.addMinutes(data, 1);
|
|
204
|
+ }
|
|
205
|
+
|
|
206
|
+ /**
|
201
|
207
|
* 获取当前时间0分0秒的日期
|
202
|
208
|
*
|
203
|
209
|
* @return
|
|
@@ -207,6 +213,15 @@ public class DateUtil {
|
207
|
213
|
return getSpecificDate(date, null, 0, 0);
|
208
|
214
|
}
|
209
|
215
|
|
|
216
|
+ /**
|
|
217
|
+ * 获取下一小时0分0秒的日期
|
|
218
|
+ *
|
|
219
|
+ * @return
|
|
220
|
+ */
|
|
221
|
+ public static Date getNextHour() {
|
|
222
|
+ Date date = getCurrHour();
|
|
223
|
+ return DateUtils.addHours(date, 1);
|
|
224
|
+ }
|
210
|
225
|
|
211
|
226
|
/**
|
212
|
227
|
* 获取当前日期 0时0分0秒 的日期
|
|
@@ -218,6 +233,33 @@ public class DateUtil {
|
218
|
233
|
}
|
219
|
234
|
|
220
|
235
|
/**
|
|
236
|
+ * 获取下一日期 0时0分0秒 的日期
|
|
237
|
+ *
|
|
238
|
+ * @return
|
|
239
|
+ */
|
|
240
|
+ public static Date getNextDate() {
|
|
241
|
+ Date date = getCurrDate();
|
|
242
|
+ return DateUtils.addDays(date, 1);
|
|
243
|
+ }
|
|
244
|
+
|
|
245
|
+ /**
|
|
246
|
+ * 获取下一个工作日 0时0分0秒 的日期
|
|
247
|
+ * @return
|
|
248
|
+ */
|
|
249
|
+ public static Date getNextWeekday() {
|
|
250
|
+ Date date = getCurrDate();
|
|
251
|
+ Calendar cal = Calendar.getInstance();
|
|
252
|
+ cal.setTime(date);
|
|
253
|
+ int day = cal.get(Calendar.DAY_OF_WEEK);
|
|
254
|
+ if(day == Calendar.FRIDAY) {
|
|
255
|
+ return DateUtils.addDays(date, 3);
|
|
256
|
+ } else if(day == Calendar.SATURDAY) {
|
|
257
|
+ return DateUtils.addDays(date, 2);
|
|
258
|
+ }
|
|
259
|
+ return DateUtils.addDays(date, 1);
|
|
260
|
+ }
|
|
261
|
+
|
|
262
|
+ /**
|
221
|
263
|
* 获取当前日期 hour时minute分second秒 的日期
|
222
|
264
|
*
|
223
|
265
|
* @return
|
|
@@ -237,6 +279,15 @@ public class DateUtil {
|
237
|
279
|
}
|
238
|
280
|
|
239
|
281
|
/**
|
|
282
|
+ * 获取下周星期一 0时0分0秒 的日期
|
|
283
|
+ * @return
|
|
284
|
+ */
|
|
285
|
+ public static Date getFirstDateOfNextWeek() {
|
|
286
|
+ Date date = getFirstDateOfCurrWeek();
|
|
287
|
+ return DateUtils.addWeeks(date, 1);
|
|
288
|
+ }
|
|
289
|
+
|
|
290
|
+ /**
|
240
|
291
|
* 获取当前周星期一 hour时minute分second秒 的日期
|
241
|
292
|
*
|
242
|
293
|
* @return
|
|
@@ -267,6 +318,15 @@ public class DateUtil {
|
267
|
318
|
}
|
268
|
319
|
|
269
|
320
|
/**
|
|
321
|
+ * 获取下月第一天 0时0分0秒 的日期
|
|
322
|
+ * @return
|
|
323
|
+ */
|
|
324
|
+ public static Date getFirstDateOfNextMonth() {
|
|
325
|
+ Date date = getFirstDateOfCurrMonth();
|
|
326
|
+ return DateUtils.addMonths(date, 1);
|
|
327
|
+ }
|
|
328
|
+
|
|
329
|
+ /**
|
270
|
330
|
* 获取当前月第一天 hour时minute分second秒 的日期
|
271
|
331
|
*
|
272
|
332
|
* @return
|
|
@@ -297,6 +357,15 @@ public class DateUtil {
|
297
|
357
|
}
|
298
|
358
|
|
299
|
359
|
/**
|
|
360
|
+ * 获取下一季度第一天 0时0分0秒 的日期
|
|
361
|
+ * @return
|
|
362
|
+ */
|
|
363
|
+ public static Date getFirstDateOfNextSeason() {
|
|
364
|
+ Date date = getFirstDateOfCurrSeason();
|
|
365
|
+ return DateUtils.addMonths(date, 3);
|
|
366
|
+ }
|
|
367
|
+
|
|
368
|
+ /**
|
300
|
369
|
* 获取当前季度第一天 hour时minute分second秒 的日期
|
301
|
370
|
*
|
302
|
371
|
* @return
|
|
@@ -330,6 +399,27 @@ public class DateUtil {
|
330
|
399
|
}
|
331
|
400
|
|
332
|
401
|
/**
|
|
402
|
+ * 获取明年第一天 0时0分0秒 的日期
|
|
403
|
+ * @return
|
|
404
|
+ */
|
|
405
|
+ public static Date getFirstDateOfNextYear() {
|
|
406
|
+ Date date = getFirstDateOfCurrYear();
|
|
407
|
+ return DateUtils.addYears(date, 1);
|
|
408
|
+ }
|
|
409
|
+
|
|
410
|
+ public static void main(String[] args) {
|
|
411
|
+// Date date = getNextMinute();
|
|
412
|
+// Date date = getNextHour();
|
|
413
|
+// Date date = getNextDate();
|
|
414
|
+ Date date = getNextWeekday();
|
|
415
|
+// Date date = getFirstDateOfNextWeek();
|
|
416
|
+// Date date = getFirstDateOfNextMonth();
|
|
417
|
+// Date date = getFirstDateOfNextSeason();
|
|
418
|
+// Date date = getFirstDateOfNextYear();
|
|
419
|
+ System.out.println(formatDate(date));
|
|
420
|
+ }
|
|
421
|
+
|
|
422
|
+ /**
|
333
|
423
|
* 获取当前年第一天 hour时minute分second秒 的日期
|
334
|
424
|
*
|
335
|
425
|
* @return
|