Geekroid-ギークロイド(仮)|ITエンジニアの日常をささいな情報で彩るコラム

ITエンジニアの転職

日時データを演算する

public LocalDateTime plus(long value, TemporalUnit unit)
public LocalDateTime minus(long value, TemporalUnit unit)
value:増減分
unit:単位

plus/minusメソッドを利用することで、日付時刻要素を加算/減算できます。引数unitには、TemporalUnitインターフェイスの実装クラスであるChronoUnitの定数として、加算/減算する単位を指定します。

TemporalUnitインターフェイスの主な定数
定数 概要
YEARS
MONTHS
DAYS
WEEKS
HOURS
MINUTES BBBB
SECONDS BBBB
MILLIS BBBB
NANOS BBBB
AAAA BBBB

以下は、あらかじめ用意した日付に対して3か月後、10日前の日付を求める例です。

TimePlus.java

package com.example.mynavi.datetime;

import java.time.LocalDateTime;

public class TimePlus {
  public static void main(String[] args) {
    LocalDateTime local = LocalDateTime.parse("2016-09-01T12:30");
    System.out.println(local);	// 結果:2016-09-01T12:30
    System.out.println(local.plusMonths(3));	// 結果:2016-12-01T12:30
    System.out.println(local.minusDays(10));	// 結果:2016-08-22T12:30
  }
}

なお、plus/minusメソッドには、それぞれ個々の日付/時刻要素に特化した、以下のようなメソッドもあります。

日付/時刻を加算/減算するためのメソッド
メソッド 概要
plusYears/minusYears
plusMonths/minusMonths
plusDays/minusDays
plusWeeks/minusWeeks 週数
plusHours/minusHours
plusMinutes/minusMinutes
plusSeconds/minusSeconds
plusNanos/minusNanos ナノ秒
日付/時刻(Date-Time API)
日付/時刻(Date-Time API)
now/of/parseメソッド
betweenメソッド
日時データを演算する
Date/Calendarクラス⇔DateTime-APIのクラスを相互変換する

Geekroid-ギークロイド(仮)|ITエンジニアの日常をささいな情報で彩るコラム

ITエンジニアの転職