如何在 Java 中為日期增加一天
Asad Riaz
2023年1月30日
2020年6月9日
-
用
plusDays()
方法將 Java 中的日期增加一天 -
用
Calendar
方法將 Java 中的日期增加一天 -
用
Milliseconds
方法將 Java 中的日期增加一天 -
用
Instant
類向 Java 日期新增一天
在本教程中,我們將學習如何在 Java 中將日期增加一天。這可以通過使用各種方法來完成,例如 plusDays
方法,Calendar
類方法,向 Date
物件新增毫秒以及 Instant class
方法。如果你使用的是 Java 1.8 或更高版本,我們建議使用 plusDays
方法。
用 plusDays()
方法將 Java 中的日期增加一天
在 Java 1.8 及更高版本中,新的 java.time
類(即 LocalDate
,LocalDateTime
)具有 plusDays
和 minusDays
方法,可從任何時間例項中新增和減去時間單位。
示例程式碼:
// java 1.8
package simpletesting;
import java.time.LocalDateTime;
public class SimpleTesting {
public static void main(String[] args) {
LocalDateTime today = LocalDateTime.now(); //Today
LocalDateTime tomorrow = today.plusDays(1); //Plus 1 day
LocalDateTime yesterday = today.minusDays(1); //Minus 1 day
System.out.println("Today: "+today);
System.out.println("Tomorrow: "+tomorrow);
System.out.println("Yesterday: "+yesterday);
}
}
輸出:
Today: 2020-03-22T19:01:00.728
Tomorrow: 2020-03-23T19:01:00.728
Yesterday: 2020-03-21T19:01:00.728
用 Calendar
方法將 Java 中的日期增加一天
我們可以使用日曆 Calendar
類向 Java 中的日期新增一天。只需在日曆類例項中新增一天即可完成:
// java 1.8
package simpletesting;
import java.util.Calendar;
import java.util.Date;
public class SimpleTesting {
public static void main(String[] args) {
Date dt = new Date();
System.out.println("Today: "+dt);
Calendar c = Calendar.getInstance();
c.setTime(dt);
c.add(Calendar.DATE, 1);
dt = c.getTime();
System.out.println("Tomorrow: "+dt);
}
}
輸出:
Today: Sun Mar 22 19:07:48 PKT 2020
Tomorrow: Mon Mar 23 19:07:48 PKT 2020
用 Milliseconds
方法將 Java 中的日期增加一天
Java 日期有一個使用毫秒的建構函式。getTime()
方法為我們提供了該值。因此,增加一天的毫秒數將為 Date
新增一天。
程式碼:
// java 1.8
package simpletesting;
import java.util.Date;
public class SimpleTesting {
public static void main(String[] args) {
Date dt = new Date();
System.out.println("Today: " + dt);
Date tomorrow = new Date(dt.getTime() + (1000 * 60 * 60 * 24));
System.out.println("Tomorrow: " + tomorrow);
}
}
輸出:
Today: Sun Mar 22 19:15:27 PKT 2020
Tomorrow: Mon Mar 23 19:15:27 PKT 2020
請注意,如果我們使用帶有夏令時的日曆時區,則可能不會跳到第二天。
用 Instant
類向 Java 日期新增一天
Java Instant
類幾乎等同於日期。Instant
解析為納秒。instant.plus
方法將給定的天數新增到 Date
中。
程式碼:
// java 1.8
package simpletesting;
import java.time.Instant;
import java.time.temporal.ChronoUnit;
import java.util.Date;
public class SimpleTesting {
public static void main(String[] args) {
Date dt = new Date();
System.out.println("Today: " + dt);
Instant instant = dt.toInstant();
Instant nextDay = instant.plus(1, ChronoUnit.DAYS);
System.out.println("Tomorrow: " + nextDay);
}
}
輸出:
Today: Sun Mar 22 19:19:58 PKT 2020
Tomorrow: 2020-03-23T14:19:58.072Z