Javaで日付などの加算・減算方法について記載します。
目次
加算・減算方法
加算や減算をするには、LocalDateTime クラスのメソッドを使用します。
1. 加算方法
日時を加算するには、次のような plus〜 メソッドを使用します。
引数には、加算する値を指定します。
メソッド名 | 処理 |
---|---|
plusSeconds | 秒の加算 |
plusMinutes | 分の加算 |
plusHours | 時間の加算 |
plusDays | 日付の加算 |
plusMonths | 月の加算 |
plusYears | 年の加算 |
実行例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss"); // 2021年10月1日 10時15分30秒 LocalDateTime datetime = LocalDateTime.of(2021, 10, 1, 10, 15, 30); // 秒の加算 LocalDateTime dt1 = datetime.plusSeconds(10); // +10秒 System.out.println(dt1.format(dtf)); // 2021/10/01 10:15:40 // 分の加算 LocalDateTime dt2 = datetime.plusMinutes(20); // +20分 System.out.println(dt2.format(dtf)); // 2021/10/01 10:35:30 // 時間の加算 LocalDateTime dt3 = datetime.plusHours(2); // +2時間 System.out.println(dt3.format(dtf)); // 2021/10/01 12:15:30 // 日付の加算 LocalDateTime dt4 = datetime.plusDays(3); // +3日 System.out.println(dt4.format(dtf)); // 2021/10/04 10:15:30 // 月の加算 LocalDateTime dt5 = datetime.plusMonths(1) ; // +1か月 System.out.println(dt5.format(dtf)); // 2021/11/01 10:15:30 // 年の加算 LocalDateTime dt6 = datetime.plusYears(5) ; // +5年 System.out.println(dt6.format(dtf)); // 2026/10/01 10:15:30 |
2. 減算方法
減算するには、minus〜 メソッドを使用します。
引数には、減算する値を指定します。
メソッド名 | 処理 |
---|---|
minusSeconds | 秒の減算 |
minusMinutes | 分の減算 |
minusHours | 時間の減算 |
minusDays | 日付の減算 |
minusMonths | 月の減算 |
minusYears | 年の減算 |
実行例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss"); // 2021年10月1日 10時15分30秒 LocalDateTime datetime = LocalDateTime.of(2021, 10, 1, 10, 15, 30); // 秒の減算 LocalDateTime dt1 = datetime.minusSeconds(10); // -10秒 System.out.println(dt1.format(dtf)); // 2021/10/01 10:15:20 // 分の減算 LocalDateTime dt2 = datetime.minusMinutes(20); // -20分 System.out.println(dt2.format(dtf)); // 2021/10/01 09:55:30 // 時間の減算 LocalDateTime dt3 = datetime.minusHours(2); // -2時間 System.out.println(dt3.format(dtf)); // 2021/10/01 08:15:30 // 日付の減算 LocalDateTime dt4 = datetime.minusDays(3); // -3日 System.out.println(dt4.format(dtf)); // 2021/09/28 10:15:30 // 月の減算 LocalDateTime dt5 = datetime.minusMonths(1) ; // -1か月 System.out.println(dt5.format(dtf)); // 2021/09/01 10:15:30 // 年の減算 LocalDateTime dt6 = datetime.minusYears(5) ; // -5年 System.out.println(dt6.format(dtf)); // 2016/10/01 10:15:30 |