[英]How to find a Future Date in Java(say two months from today) in 24 February 2019 format
[英]How to find start of 3 months before today in Java?
final Calendar tentativeStartDate = Calendar.getInstance();
tentativeStartDate.set(Calendar.MILLISECOND, 0);
tentativeStartDate.set(Calendar.SECOND, 0);
tentativeStartDate.set(Calendar.MINUTE, 0);
tentativeStartDate.set(Calendar.HOUR, 0);
tentativeStartDate.set(Calendar.DATE, 1);
tentativeStartDate.add(Calendar.MONTH, -3);
我想在當前月份之前的3個月開始。 例如,如果今天是6月18日,我希望4月1日午夜為0分鍾/秒。 [4月1日,00:00:00]
但是,這種邏輯沒有給我正確的答案。 Java中有更好/不同的方式嗎?
使用Java 8,您可以按如下方式使用流利的習慣用法:
划區
ZonedDateTime.now([your zone ID, e.g. ZoneId.systemDefault()])
// month offset
.minusMonths(2)
// start at day 1
.withDayOfMonth(1)
// change time-of-day to when the day starts
.truncatedTo(ChronoUnit.DAYS)
本地
LocalDate.now([your zone ID, e.g. ZoneId.systemDefault()])
.minusMonths(2)
.withDayOfMonth(1)
注意
因為您想要四月,所以我將月份偏移量設置為2
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.