public final class LocalDate extends Object implements Temporal, TemporalAdjuster, ChronoLocalDate, Serializable
2007-12-03など。
 
 LocalDateは、日付(年-月-日として表示されることが多い)を表す不変の日付/時間オブジェクトです。 他の日付フィールド(「年の日」、曜日、「年の週番号」など)にもアクセスできます。 たとえば、「2007年10月2日」という値をLocalDateに格納できます。 
 
このクラスでは、時間またはタイムゾーンを格納したり表現したりしません。 むしろこれは、誕生日に使用されるような日付に関する記述です。 オフセットやタイムゾーンなどの追加情報がなければ、時系列上にインスタントを表現することはできません。
ISO-8601暦体系は、世界中の大部分で現在使われている近代の常用暦体系です。 これは、現在のうるう年のルールがすべての時間に適用される、先発グレゴリオ暦体系と同等です。 今日作成されているほとんどのアプリケーションには、ISO-8601のルールが完全に適しています。 ただし、歴史的な日付を使用し、それらが正確であることを必要とするアプリケーションには、ISO-8601の方法が適さないことがわかります。
 これは値ベースのクラスです。LocalDateのインスタンスに対して、アイデンティティの影響を受けやすい操作(参照型等価演算子(==)、アイデンティティ・ハッシュ・コード、同期化など)を使用すると、予測できない結果が生じることがあるため、使わないようにしてください。 比較する場合は、equalsメソッドを使用することをお薦めします。 
| 修飾子と型 | フィールド | 説明 | 
|---|---|---|
static LocalDate | 
MAX | 
 サポートされている最大の 
LocalDateである「+999999999-12-31」。 | 
static LocalDate | 
MIN | 
 サポートされている最小の 
LocalDateである「-999999999-01-01」。 | 
| 修飾子と型 | メソッド | 説明 | 
|---|---|---|
Temporal | 
adjustInto(Temporal temporal) | 
 指定された一時オブジェクトをこのオブジェクトと同じ日付になるように調整します。 
 | 
LocalDateTime | 
atStartOfDay() | 
 この日付を深夜零時と組み合せて、この日付の開始時の 
LocalDateTimeを作成します。 | 
ZonedDateTime | 
atStartOfDay(ZoneId zone) | 
 タイムゾーンのルールに従って、この日付のもっとも早い有効な時間からゾーン付きの日付/時間を返します。 
 | 
LocalDateTime | 
atTime(int hour, int minute) | 
 この日付を時間と組み合せて 
LocalDateTimeを作成します。 | 
LocalDateTime | 
atTime(int hour, int minute, int second) | 
 この日付を時間と組み合せて 
LocalDateTimeを作成します。 | 
LocalDateTime | 
atTime(int hour, int minute, int second, int nanoOfSecond) | 
 この日付を時間と組み合せて 
LocalDateTimeを作成します。 | 
LocalDateTime | 
atTime(LocalTime time) | 
 この日付を時間と組み合せて 
LocalDateTimeを作成します。 | 
OffsetDateTime | 
atTime(OffsetTime time) | 
 この日付をオフセット時間と組み合せて 
OffsetDateTimeを作成します。 | 
int | 
compareTo(ChronoLocalDate other) | 
 この日付を別の日付と比較します。 
 | 
boolean | 
equals(Object obj) | 
 この日付がもう一方の日付と等しいかどうかを確認します。 
 | 
String | 
format(DateTimeFormatter formatter) | 
 指定されたフォーマッタを使用してこの日付を書式設定します。 
 | 
static LocalDate | 
from(TemporalAccessor temporal) | 
 時間的オブジェクトから 
LocalDateのインスタンスを取得します。 | 
int | 
get(TemporalField field) | 
 指定されたフィールドの値をこの日付から 
intとして取得します。 | 
IsoChronology | 
getChronology() | 
 ISO暦体系であるこの日付の暦を取得します。 
 | 
int | 
getDayOfMonth() | 
 「月の日」フィールドを取得します。 
 | 
DayOfWeek | 
getDayOfWeek() | 
 列挙型 
DayOfWeekである曜日フィールドを取得します。 | 
int | 
getDayOfYear() | 
 「年の日」フィールドを取得します。 
 | 
Era | 
getEra() | 
 この日付で使用可能な紀元を取得します。 
 | 
long | 
getLong(TemporalField field) | 
 指定されたフィールドの値をこの日付から 
longとして取得します。 | 
Month | 
getMonth() | 
 列挙型 
Monthを使用して、月フィールドを取得します。 | 
int | 
getMonthValue() | 
 月フィールドを取得します(1-12)。 
 | 
int | 
getYear() | 
 年フィールドを取得します。 
 | 
int | 
hashCode() | 
 この日付のハッシュ・コード。 
 | 
boolean | 
isAfter(ChronoLocalDate other) | 
 この日付が、指定された日付より後にあるかどうかをチェックします。 
 | 
boolean | 
isBefore(ChronoLocalDate other) | 
 この日付が、指定された日付より前にあるかどうかをチェックします。 
 | 
boolean | 
isEqual(ChronoLocalDate other) | 
 この日付が、指定された日付と等しいかどうかをチェックします。 
 | 
boolean | 
isLeapYear() | 
 ISO先発暦体系のルールに従って、年がうるう年であるかどうかをチェックします。 
 | 
boolean | 
isSupported(TemporalField field) | 
 指定されたフィールドがサポートされているかどうかをチェックします。 
 | 
boolean | 
isSupported(TemporalUnit unit) | 
 指定された単位がサポートされているかどうかをチェックします。 
 | 
int | 
lengthOfMonth() | 
 この日付によって表される月の長さを返します。 
 | 
int | 
lengthOfYear() | 
 この日付によって表される年の長さを返します。 
 | 
LocalDate | 
minus(long amountToSubtract, TemporalUnit unit) | 
 指定された量を減算した、この日付のコピーを返します。 
 | 
LocalDate | 
minus(TemporalAmount amountToSubtract) | 
 指定された量を減算した、この日付のコピーを返します。 
 | 
LocalDate | 
minusDays(long daysToSubtract) | 
 指定された日数を減算した、この 
LocalDateのコピーを返します。 | 
LocalDate | 
minusMonths(long monthsToSubtract) | 
 指定された月数を減算した、この 
LocalDateのコピーを返します。 | 
LocalDate | 
minusWeeks(long weeksToSubtract) | 
 指定された週数を減算した、この 
LocalDateのコピーを返します。 | 
LocalDate | 
minusYears(long yearsToSubtract) | 
 指定された年数を減算した、この 
LocalDateのコピーを返します。 | 
static LocalDate | 
now() | 
 デフォルトのタイムゾーンのシステム・クロックから現在の日付を取得します。 
 | 
static LocalDate | 
now(Clock clock) | 
 指定されたクロックから現在の日付を取得します。 
 | 
static LocalDate | 
now(ZoneId zone) | 
 指定されたタイムゾーンのシステム・クロックから現在の日付を取得します。 
 | 
static LocalDate | 
of(int year, int month, int dayOfMonth) | 
 年、月、および日から 
LocalDateのインスタンスを取得します。 | 
static LocalDate | 
of(int year, Month month, int dayOfMonth) | 
 年、月、および日から 
LocalDateのインスタンスを取得します。 | 
static LocalDate | 
ofEpochDay(long epochDay) | 
 エポック日数から 
LocalDateのインスタンスを取得します。 | 
static LocalDate | 
ofYearDay(int year, int dayOfYear) | 
 年および「年の日」から 
LocalDateのインスタンスを取得します。 | 
static LocalDate | 
parse(CharSequence text) | 
2007-12-03などのテキスト文字列からLocalDateのインスタンスを取得します。 | 
static LocalDate | 
parse(CharSequence text, DateTimeFormatter formatter) | 
 特定のフォーマッタを使用して、テキスト文字列から 
LocalDateのインスタンスを取得します。 | 
LocalDate | 
plus(long amountToAdd, TemporalUnit unit) | 
 指定された量を加算した、この日付のコピーを返します。 
 | 
LocalDate | 
plus(TemporalAmount amountToAdd) | 
 指定された量を加算した、この日付のコピーを返します。 
 | 
LocalDate | 
plusDays(long daysToAdd) | 
 指定された日数を加算した、この 
LocalDateのコピーを返します。 | 
LocalDate | 
plusMonths(long monthsToAdd) | 
 指定された月数を加算した、この 
LocalDateのコピーを返します。 | 
LocalDate | 
plusWeeks(long weeksToAdd) | 
 指定された週数を加算した、この 
LocalDateのコピーを返します。 | 
LocalDate | 
plusYears(long yearsToAdd) | 
 指定された年数を加算した、この 
LocalDateのコピーを返します。 | 
<R> R | 
query(TemporalQuery<R> query) | 
 指定された問合せを使用してこの日付を問い合わせます。 
 | 
ValueRange | 
range(TemporalField field) | 
 指定されたフィールドの有効な値の範囲を取得します。 
 | 
long | 
toEpochDay() | 
 この日付をエポック日に変換します。 
 | 
String | 
toString() | 
 この日付を 
Stringとして出力します(2007-12-03など)。 | 
Period | 
until(ChronoLocalDate endDateExclusive) | 
 この日付からもう一方の日付までの期間を 
Periodとして計算します。 | 
long | 
until(Temporal endExclusive, TemporalUnit unit) | 
 もう一方の日付までの時間量を指定された単位で計算します。 
 | 
LocalDate | 
with(TemporalAdjuster adjuster) | 
 この日付の調整済のコピーを返します。 
 | 
LocalDate | 
with(TemporalField field, long newValue) | 
 指定されたフィールドを新しい値に設定して、この日付のコピーを返します。 
 | 
LocalDate | 
withDayOfMonth(int dayOfMonth) | 
 「月の日」を変更して、この 
LocalDateのコピーを返します。 | 
LocalDate | 
withDayOfYear(int dayOfYear) | 
 「年の日」を変更して、この 
LocalDateのコピーを返します。 | 
LocalDate | 
withMonth(int month) | 
 「年の月」を変更して、この 
LocalDateのコピーを返します。 | 
LocalDate | 
withYear(int year) | 
 年を変更して、この 
LocalDateのコピーを返します。 | 
timeLineOrderpublic static final LocalDate MIN
LocalDateである「-999999999-01-01」。 これは、アプリケーションによって「遠い過去」の日付として使用されることがあります。 public static final LocalDate MAX
LocalDateである「+999999999-12-31」。 これは、アプリケーションによって「遠い将来」の日付として使用されることがあります。 public static LocalDate now()
 これは、デフォルトのタイムゾーンのsystem clockを問い合わせ、現在の日付を取得します。
 
このメソッドを使用すると、クロックがハードコードされているため、テストに代替のクロックを使用できないようにします。
public static LocalDate now(ZoneId zone)
 これはsystem clockを問い合わせて、現在の日付を取得します。 タイムゾーンを指定すると、デフォルトのタイムゾーンへの依存を避けられます。 
 
このメソッドを使用すると、クロックがハードコードされているため、テストに代替のクロックを使用できないようにします。
zone - 使用するゾーンID、null以外public static LocalDate now(Clock clock)
 これは指定されたクロックを問い合わせ、現在の日付(今日)を取得します。 このメソッドを使用すると、テストに代替のクロックを使用できます。 代替のクロックはdependency injectionを使用して導入できます。 
clock - 使用するクロック、null以外public static LocalDate of(int year, Month month, int dayOfMonth)
LocalDateのインスタンスを取得します。
 
 これは、指定された年、月、および「月の日」を使ってLocalDateを返します。 日は年と月に対して有効である必要があり、そうでない場合は、例外がスローされます。 
year - 表す年(MIN_YEARからMAX_YEARまで)month - 表される月。null以外dayOfMonth - 表される「月の日」(1-31)DateTimeException - いずれかのフィールドの値が範囲外である場合、または「月の日」が年の月に対して無効である場合public static LocalDate of(int year, int month, int dayOfMonth)
LocalDateのインスタンスを取得します。
 
 これは、指定された年、月、および「月の日」を使ってLocalDateを返します。 日は年と月に対して有効である必要があり、そうでない場合は、例外がスローされます。 
year - 表す年(MIN_YEARからMAX_YEARまで)month - 表される月。1(1月)-12(12月)dayOfMonth - 表される「月の日」(1-31)DateTimeException - いずれかのフィールドの値が範囲外である場合、または「月の日」が年の月に対して無効である場合public static LocalDate ofYearDay(int year, int dayOfYear)
LocalDateのインスタンスを取得します。
 
 これは、指定された年および「年の日」を使ってLocalDateを返します。 「年の日」はその年に有効である必要があり、そうでない場合は例外がスローされます。 
year - 表す年(MIN_YEARからMAX_YEARまで)dayOfYear - 表される「年の日」(1-366)DateTimeException - いずれかのフィールドの値が範囲外にある場合、または「年の日」がその月に有効でない場合public static LocalDate ofEpochDay(long epochDay)
LocalDateのインスタンスを取得します。
 
 これは、指定されたエポック日を使ってLocalDateを返します。 EPOCH_DAYは、0日目が1970-01-01である、単純に増加していく日数です。 負の数はそれ以前の時期を表します。 
epochDay - エポック(1970-01-01)に基づいて変換するエポック日DateTimeException - エポック日がサポートされている日付の範囲を超える場合public static LocalDate from(TemporalAccessor temporal)
LocalDateのインスタンスを取得します。
 
 これは、指定されたtemporal (一時)に基づいてローカル日付を取得します。 TemporalAccessorは任意の日付と時間のセットに関する情報を表し、それがこのファクトリでLocalDateのインスタンスに変換されます。 
 
 この変換では、EPOCH_DAYフィールドを抽出することに依存しているTemporalQueries.localDate()問合せを使用します。
 
 このメソッドは関数型インタフェースTemporalQueryのシグネチャに一致するため、メソッド参照LocalDate::fromを介して問合せとして使用できます。
ChronoLocalDateのfromtemporal - 変換する一時オブジェクト、null以外DateTimeException - LocalDateに変換できない場合Chronology.date(TemporalAccessor)public static LocalDate parse(CharSequence text)
2007-12-03などのテキスト文字列からLocalDateのインスタンスを取得します。
 
 この文字列は有効な日付を表している必要があり、DateTimeFormatter.ISO_LOCAL_DATEを使って解析されます。
text - 「2007-12-03」などの解析対象のテキスト。null以外DateTimeParseException - テキストが解析できない場合public static LocalDate parse(CharSequence text, DateTimeFormatter formatter)
LocalDateのインスタンスを取得します。
 そのテキストがフォーマッタを使って解析され、日付が返されます。
text - 解析するテキスト。null以外formatter - 使用するフォーマッタ、null以外DateTimeParseException - テキストが解析できない場合public boolean isSupported(TemporalField field)
 これは、指定されたフィールドに対して、この日付を問合せできるかどうかをチェックします。 falseの場合、range、get、およびwith(TemporalField, long)メソッドの呼び出しは、例外をスローします。 
 
 フィールドがChronoFieldの場合、ここに問合せを実装します。 サポートされるフィールドは次のとおりです。 
 
DAY_OF_WEEK
 ALIGNED_DAY_OF_WEEK_IN_MONTH
 ALIGNED_DAY_OF_WEEK_IN_YEAR
 DAY_OF_MONTH
 DAY_OF_YEAR
 EPOCH_DAY
 ALIGNED_WEEK_OF_MONTH
 ALIGNED_WEEK_OF_YEAR
 MONTH_OF_YEAR
 PROLEPTIC_MONTH
 YEAR_OF_ERA
 YEAR
 ERA
 ChronoFieldインスタンスはfalseを返します。
 
 フィールドがChronoFieldでない場合、このメソッドの結果は、thisを引数として渡してTemporalField.isSupportedBy(TemporalAccessor)を呼び出すことによって取得します。 フィールドがサポートされているかどうかはフィールドによって決定します。 
ChronoLocalDateのisSupportedTemporalAccessorのisSupportedfield - チェックするフィールド、nullはfalseを返すpublic boolean isSupported(TemporalUnit unit)
 これは、指定された単位をこの日付に加算または減算できるかどうかをチェックします。 falseの場合、plus(long, TemporalUnit)およびminusメソッドの呼び出しは、例外をスローします。 
 
 単位がChronoUnitの場合、問合せはここで実装されます。 サポートされる単位は次のとおりです。 
 
DAYS
 WEEKS
 MONTHS
 YEARS
 DECADES
 CENTURIES
 MILLENNIA
 ERAS
 ChronoUnitインスタンスはfalseを返します。
 
 単位がChronoUnitでない場合、このメソッドの結果は、thisを引数として渡してTemporalUnit.isSupportedBy(Temporal)を呼び出すことによって取得します。 単位がサポートされているかどうかは単位によって決定します。 
ChronoLocalDateのisSupportedTemporalのisSupportedunit - チェックする単位、nullはfalseを返すpublic ValueRange range(TemporalField field)
範囲オブジェクトはフィールドの有効な最小値と最大値を表します。 この日付は、返される範囲の精度を高めるために使用されます。 範囲を返せない場合は、フィールドがサポートされていないか他のなんらかの理由で、例外がスローされます。
 フィールドがChronoFieldの場合、ここに問合せを実装します。 サポートされるフィールドは適切な範囲のインスタンスを返します。 他のすべてのChronoFieldインスタンスはUnsupportedTemporalTypeExceptionをスローします。 
 
 フィールドがChronoFieldではない場合、このメソッドの結果は、引数としてthisを渡してTemporalField.rangeRefinedBy(TemporalAccessor)を呼び出すことにより取得されます。 範囲を取得できるかどうかはフィールドによって決まります。 
TemporalAccessorのrangefield - 範囲を問い合わせるフィールド、null以外DateTimeException - フィールドの範囲を取得できない場合UnsupportedTemporalTypeException - フィールドがサポートされていない場合public int get(TemporalField field)
intとして取得します。
 これは、指定したフィールドの値についてこの日付に問い合せます。 返される値は常にフィールドの値の有効な範囲内になります。 値を返せない場合は、フィールドがサポートされていないか他のなんらかの理由で、例外がスローされます。
 フィールドがChronoFieldの場合、ここに問合せを実装します。 サポートされているフィールドはこの日付に基づいて有効な値を返します。ただし、EPOCH_DAYおよびPROLEPTIC_MONTHは長すぎてintに収まらないので、DateTimeExceptionがスローされます。 他のすべてのChronoFieldインスタンスはUnsupportedTemporalTypeExceptionをスローします。 
 
 フィールドがChronoFieldではない場合、このメソッドの結果は、引数としてthisを渡してTemporalField.getFrom(TemporalAccessor)を呼び出すことにより取得されます。 値を取得できるかどうか、および値が何を表すかは、フィールドによって決まります。 
TemporalAccessorのgetfield - 取得するフィールド、null以外DateTimeException - フィールドの値を取得できない場合、または値がフィールドの有効な値の範囲外の場合UnsupportedTemporalTypeException - フィールドがサポートされていない場合、または値の範囲がintを超えている場合ArithmeticException - 数値のオーバーフローが発生した場合public long getLong(TemporalField field)
longとして取得します。
 これは、指定したフィールドの値についてこの日付に問い合せます。 値を返せない場合は、フィールドがサポートされていないか他のなんらかの理由で、例外がスローされます。
 フィールドがChronoFieldの場合、ここに問合せを実装します。 サポートされているフィールドは、この日付に基づいて有効な値を返します。 他のすべてのChronoFieldインスタンスはUnsupportedTemporalTypeExceptionをスローします。 
 
 フィールドがChronoFieldではない場合、このメソッドの結果は、引数としてthisを渡してTemporalField.getFrom(TemporalAccessor)を呼び出すことにより取得されます。 値を取得できるかどうか、および値が何を表すかは、フィールドによって決まります。 
TemporalAccessorのgetLongfield - 取得するフィールド、null以外DateTimeException - フィールドの値を取得できない場合UnsupportedTemporalTypeException - フィールドがサポートされていない場合ArithmeticException - 数値のオーバーフローが発生した場合public IsoChronology getChronology()
 Chronologyは使用中の暦体系を表します。 ISO-8601暦体系は、世界中の大部分で現在使われている近代の常用暦体系です。 これは、現在のうるう年のルールがすべての時間に適用される、先発グレゴリオ暦体系と同等です。 
ChronoLocalDateのgetChronologypublic Era getEra()
 公式のISO-8601標準では紀元を定義していませんが、IsoChronologyでは定義しています。 それは、1年以降の「CE」と0年以前の「BCE」の2つの紀元を定義しています。 ユリウスとグレゴリオの切換え前の日付は歴史に沿っていないため、「BCE」と「CE」の切り換えも一般的に使用される紀元(「BC」と「AD」の使用を指すことが多い)と揃っていません。 
 
 このメソッドは主としてChronoLocalDateの規定(和暦をサポートする必要がある)を満たすために存在しているため、このクラスのユーザーは通常それを無視するようにしてください。
 
 返される紀元は、==演算子を使ってIsoChronologyの定数と比較できるシングルトンになります。
ChronoLocalDateのgetEraIsoChronologyの紀元定数、null以外public int getYear()
 このメソッドは、年を表すプリミティブなint値を返します。
 
 このメソッドで返される年は、get(YEAR)のように予期的なものです。 紀元年を取得するには、get(YEAR_OF_ERA)を使用します。 
public int getMonthValue()
 このメソッドは、月を1-12のintとして返します。 getMonth()を呼び出すことで列挙型Monthが使用される場合は、アプリケーション・コードがより明確になることが多くなります。 
getMonth()public Month getMonth()
Monthを使用して、月フィールドを取得します。
 
 このメソッドは、月を表す列挙型Monthを返します。 これによって、int値が意味する内容に関する混乱を回避できます。 プリミティブなint値にアクセスする必要がある場合、この列挙型はint値を提供します。 
getMonthValue()public int getDayOfMonth()
 このメソッドは、「月の日」を表すプリミティブなint値を返します。
public int getDayOfYear()
 このメソッドは、「年の日」を表すプリミティブなint値を返します。
public DayOfWeek getDayOfWeek()
DayOfWeekである曜日フィールドを取得します。
 
 このメソッドは、曜日を表す列挙型DayOfWeekを返します。 これによって、int値が意味する内容に関する混乱を回避できます。 プリミティブなint値にアクセスする必要がある場合、この列挙型はint値を提供します。 
 
 DayOfWeekからは追加情報を取得できます。 具体的には、それらの値のテキスト名などがあります。 
public boolean isLeapYear()
このメソッドは、時系列全体にわたって、うるう年の現在のルールを適用します。 一般に、年は4で割り切れる場合にうるう年です。 ただし、400で割り切れる年を除き、100で割り切れる年はうるう年ではありません。
たとえば、1904年は4で割り切れるうるう年です。1900年は100で割り切れるため、うるう年ではありませんでしたが、2000年は400で割り切れるため、うるう年でした。
計算は先発暦で、遠い将来および遠い過去にも同じルールが適用されます。 これは歴史的には正確ではありませんが、ISO-8601規格には正確です。
ChronoLocalDateのisLeapYearpublic int lengthOfMonth()
これは月の長さを日数で返します。 たとえば、1月の日付は31を返します。
ChronoLocalDateのlengthOfMonthpublic int lengthOfYear()
これは、その年の長さを日数(365または366)で返します。
ChronoLocalDateのlengthOfYearpublic LocalDate with(TemporalAdjuster adjuster)
 これは、日付を調整して、この日付に基づくLocalDateを返します。 調整は、指定されたアジャスタ戦略オブジェクトを使用して行われます。 どのような調整が行われるかを理解するには、アジャスタのドキュメントを参照してください。 
 
単純なアジャスタは、年フィールドなどの1つのフィールドだけを設定するなどです。 複雑なアジャスタは、日付を月の最後の日に設定するなどです。
 一般的な調整の選択は、TemporalAdjustersで指定します。 これらには、「月の最後の日」や「次の水曜日」を見つけることが含まれます。 主要な日付/時間クラス(MonthやMonthDayなど)も、TemporalAdjusterインタフェースを実装します。 アジャスタは、さまざまな長さの月やうるう年などの特別なケースの処理を担当します。 
 
たとえば、このコードでは7月の最後の日の日付を返します。
import static java.time.Month.*; import static java.time.temporal.TemporalAdjusters.*; result = localDate.with(JULY).with(lastDayOfMonth());
 このメソッドの結果は、指定されたアジャスタでthisを引数として渡してTemporalAdjuster.adjustInto(Temporal)メソッドを呼び出すことによって取得されます。
 
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
ChronoLocalDateのwithTemporalのwithadjuster - 使用するアジャスタ、null以外これに基づくLocalDate。null以外DateTimeException - 調整ができない場合ArithmeticException - 数値のオーバーフローが発生した場合public LocalDate with(TemporalField field, long newValue)
 これは、指定されたフィールドの値を変更して、この日付に基づくLocalDateを返します。 これを使用すると、年、月、「月の日」などのサポートされているフィールドを変更できます。 値を設定できない場合は、フィールドがサポートされていないか他の理由のために、例外がスローされます。 
 
場合によっては、指定されたフィールドを変更すると、結果となる日付が無効になることがあります(1月31日の月を2月に変更すると、「月の日」が無効になるなど)。 このような場合、そのフィールドは日付の解決を行います。 通常は1つ前の有効な日付が選択され、この例の場合は2月の最後の有効な日になります。
 フィールドがChronoFieldの場合は、調整はここで実装されます。 サポートされるフィールドは次のように動作します。 
 
DAY_OF_WEEK - 指定された曜日を使ってLocalDateを返します。 日付は、月曜日から日曜日までの週の範囲内で最大6日間、前後に調整されます。 
 ALIGNED_DAY_OF_WEEK_IN_MONTH - 指定された「位置合せされた曜日」を使ってLocalDateを返します。 日付は、指定された月ベースの「位置合せされた曜日」に調整されます。 位置合せした週数は、ある特定の月の第1週目がその月の最初の日で始まるようにして数えられます。 これにより、日付が最大6日間次の月に移される可能性があります。 
 ALIGNED_DAY_OF_WEEK_IN_YEAR - 指定された「位置合せされた曜日」を使ってLocalDateを返します。 日付は、指定された年ベースの「位置合せされた曜日」に調整されます。 位置合せされた週数は、ある特定の年の第1週目がその年の最初の日で始まるようにして数えられます。 これにより、日付が最大6日間次の年に移される可能性があります。 
 DAY_OF_MONTH - 指定された「月の日」を使ってLocalDateを返します。 その月および年は変更されません。 「月の日」がその年と月に対して無効である場合は、DateTimeExceptionがスローされます。 
 DAY_OF_YEAR - 指定された「年の日」を使ってLocalDateを返します。 その年は変更されません。 「年の日」がその年に対して無効である場合は、DateTimeExceptionがスローされます。 
 EPOCH_DAY - 指定されたエポック日を使ってLocalDateを返します。 これは、日付を完全に置き換えるもので、ofEpochDay(long)と同等です。 
 ALIGNED_WEEK_OF_MONTH - 指定された「位置合せされた月の週番号」を使ってLocalDateを返します。 位置合せした週数は、ある特定の月の第1週目がその月の最初の日で始まるようにして数えられます。 この調整により、指定された週に一致するように日付が週単位で移されます。 結果には、この日付と同じ曜日が含まれます。 これにより、日付が次の月に移される可能性があります。 
 ALIGNED_WEEK_OF_YEAR - 指定された「位置合せされた年の週番号」を使ってLocalDateを返します。 位置合せされた週数は、ある特定の年の第1週目がその年の最初の日で始まるようにして数えられます。 この調整により、指定された週に一致するように日付が週単位で移されます。 結果には、この日付と同じ曜日が含まれます。 これにより、日付が次の年に移される可能性があります。 
 MONTH_OF_YEAR - 指定された月を使ってLocalDateを返します。 その年は変更されません。 「月の日」も、新しい月および年に対して無効にならないかぎり変更されません。 その場合、「月の日」は新しい月および年に対して有効な最大値に調整されます。 
 PROLEPTIC_MONTH - 指定された予期的月を使ってLocalDateを返します。 「月の日」は、新しい月および年に対して無効にならないかぎり変更されません。 その場合、「月の日」は新しい月および年に対して有効な最大値に調整されます。 
 YEAR_OF_ERA - 指定された紀元年を使ってLocalDateを返します。 その紀元および月は変更されません。 「月の日」も、新しい月および年に対して無効にならないかぎり変更されません。 その場合、「月の日」は新しい月および年に対して有効な最大値に調整されます。 
 YEAR - 指定された年を使ってLocalDateを返します。 その月は変更されません。 「月の日」も、新しい月および年に対して無効にならないかぎり変更されません。 その場合、「月の日」は新しい月および年に対して有効な最大値に調整されます。 
 ERA- 指定された紀元を使ってLocalDateを返します。 紀元年および月は変更されません。 「月の日」も、新しい月および年に対して無効にならないかぎり変更されません。 その場合、「月の日」は新しい月および年に対して有効な最大値に調整されます。 
 
 いずれの場合も、新しい値がフィールドの値の有効範囲外にあるとDateTimeExceptionがスローされます。
 
 他のすべてのChronoFieldインスタンスはUnsupportedTemporalTypeExceptionをスローします。
 
 フィールドがChronoFieldではない場合、このメソッドの結果は、thisを引数として渡してTemporalField.adjustInto(Temporal, long)を呼び出すことによって取得されます。 この場合、インスタントを調整するかどうかおよびどのように調整するかはフィールドによって決まります。 
 
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
ChronoLocalDateのwithTemporalのwithfield - 結果に設定するフィールド、null以外newValue - 結果のフィールドの新しい値これに基づくLocalDate。null以外DateTimeException - フィールドを設定できない場合UnsupportedTemporalTypeException - フィールドがサポートされていない場合ArithmeticException - 数値のオーバーフローが発生した場合public LocalDate withYear(int year)
LocalDateのコピーを返します。
 その「月の日」がその年に対して無効である場合は、その月の最後の有効な日に変更されます。
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
year - 結果に設定される年(MIN_YEARからMAX_YEARまで)LocalDate。null以外DateTimeException - 年の値が無効である場合public LocalDate withMonth(int month)
LocalDateのコピーを返します。
 その「月の日」がその年に対して無効である場合は、その月の最後の有効な日に変更されます。
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
month - 結果に設定される月。1(1月)-12(12月)LocalDate。null以外DateTimeException - 月の値が無効である場合public LocalDate withDayOfMonth(int dayOfMonth)
LocalDateのコピーを返します。
 結果となる日付が無効である場合は、例外がスローされます。
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
dayOfMonth - 結果に設定される「月の日」。1から28-31までLocalDate。null以外DateTimeException - 「月の日」の値が無効である場合、または「月の日」がその月-年に対して無効である場合public LocalDate withDayOfYear(int dayOfYear)
LocalDateのコピーを返します。
 結果となる日付が無効である場合は、例外がスローされます。
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
dayOfYear - 結果に設定される「年の日」。1から365-366までLocalDate。null以外DateTimeException - 「年の日」の値が無効である場合、または「年の日」がその年に対して無効である場合public LocalDate plus(TemporalAmount amountToAdd)
 これは、指定された量を加算して、この日付に基づくLocalDateを返します。 この量は通常Periodですが、TemporalAmountインタフェースを実装する他のどの型であってもかまいません。 
 
 計算は、TemporalAmount.addTo(Temporal)を呼び出すことによって量オブジェクトに委譲されます。 量実装は加算を任意の方法で自由に実装できますが、通常はplus(long, TemporalUnit)にコールバックします。 正常に加算できるかどうかを判断するには、量実装のドキュメントを参照してください。 
 
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
ChronoLocalDateのplusTemporalのplusamountToAdd - 加算する量、nullでないLocalDate。null以外DateTimeException - 加算できない場合ArithmeticException - 数値のオーバーフローが発生した場合public LocalDate plus(long amountToAdd, TemporalUnit unit)
 これは、その単位での量を加算して、この日付に基づくLocalDateを返します。 量を加算できない場合、単位がサポートされていないか他の理由のために、例外がスローされます。 
 
場合によっては、量を加算すると、結果となる日付が無効になることがあります。 たとえば、1月31日に1月を加算すると、2月31日という結果になります。 このような場合、その単位は日付の解決を行います。 通常は1つ前の有効な日付が選択され、この例の場合は2月の最後の有効な日になります。
 フィールドがChronoUnitの場合は、加算はここで実装されます。 サポートされるフィールドは次のように動作します。 
 
DAYS- 指定された日数を加算してLocalDateを返します。 これはplusDays(long)と同等です。 
 WEEKS- 指定された週数を加算してLocalDateを返します。 これはplusWeeks(long)と同等であり、週7日制を使用します。 
 MONTHS- 指定された月数を加算してLocalDateを返します。 これはplusMonths(long)と同等です。 「月の日」は、新しい月および年に対して無効にならないかぎり変更されません。 その場合、「月の日」は新しい月および年に対して有効な最大値に調整されます。 
 YEARS- 指定された年数を加算してLocalDateを返します。 これはplusYears(long)と同等です。 「月の日」は、新しい月および年に対して無効にならないかぎり変更されません。 その場合、「月の日」は新しい月および年に対して有効な最大値に調整されます。 
 DECADES- 指定された数の10年を加算してLocalDateを返します。 これは、量を10倍にしてplusYears(long)を呼び出すことと同等です。 「月の日」は、新しい月および年に対して無効にならないかぎり変更されません。 その場合、「月の日」は新しい月および年に対して有効な最大値に調整されます。 
 CENTURIES- 指定された数の100年を加算してLocalDateを返します。 これは、量を100倍にしてplusYears(long)を呼び出すことと同等です。 「月の日」は、新しい月および年に対して無効にならないかぎり変更されません。 その場合、「月の日」は新しい月および年に対して有効な最大値に調整されます。 
 MILLENNIA- 指定された数の1000年を加算してLocalDateを返します。 これは、量を1,000倍にしてplusYears(long)を呼び出すことと同等です。 「月の日」は、新しい月および年に対して無効にならないかぎり変更されません。 その場合、「月の日」は新しい月および年に対して有効な最大値に調整されます。 
 ERAS- 指定された紀元数を加算してLocalDateを返します。 サポートされている紀元は2つのみなので、この量は1、0、または-1にする必要があります。 量が0以外である場合は、紀元年が変わらないように、その年が変更されます。 「月の日」は、新しい月および年に対して無効にならないかぎり変更されません。 その場合、「月の日」は新しい月および年に対して有効な最大値に調整されます。 
 
 他のすべてのChronoUnitインスタンスはUnsupportedTemporalTypeExceptionをスローします。
 
 フィールドがChronoUnitでない場合、このメソッドの結果は、thisを引数として渡してTemporalUnit.addTo(Temporal, long)を呼び出すことによって取得されます。 この場合、加算を実行するかどうかおよびどのように実行するかは単位によって決まります。 
 
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
ChronoLocalDateのplusTemporalのplusamountToAdd - 結果に加算する単位の量、負も可unit - 加算する量の単位、nullでないLocalDate。null以外DateTimeException - 加算できない場合UnsupportedTemporalTypeException - 単位がサポートされていない場合ArithmeticException - 数値のオーバーフローが発生した場合public LocalDate plusYears(long yearsToAdd)
LocalDateのコピーを返します。
 このメソッドは、3つのステップで、指定された量を年フィールドに加算します。
たとえば、2008-02-29 (うるう年)に1年を加算すると、2009-02-29(標準の年)という無効な日付が生じます。 無効な結果を返す代わりに、その月の最後の有効な日である2009-02-28が選択されます。
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
yearsToAdd - 加算する年数。負の値の場合もあるLocalDate。null以外DateTimeException - 結果がサポートされている日付範囲を超える場合public LocalDate plusMonths(long monthsToAdd)
LocalDateのコピーを返します。
 このメソッドは、3つのステップで、指定された量を月フィールドに加算します。
たとえば、2007-03-31に1月を加算すると、2007-04-31という無効な日付が生じます。 無効な結果を返す代わりに、その月の最後の有効な日である2007-04-30が選択されます。
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
monthsToAdd - 加算する月数。負の値の場合もあるLocalDate。null以外DateTimeException - 結果がサポートされている日付範囲を超える場合public LocalDate plusWeeks(long weeksToAdd)
LocalDateのコピーを返します。
 このメソッドは、指定された週単位の量を日フィールドに加算し、結果が有効のままであるように、必要に応じて月および年フィールドを増分します。 この結果が無効になるのは、最大/最小の年を超える場合のみです。
たとえば、2008-12-31に1週間を加算すると、2009-01-07という結果になります。
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
weeksToAdd - 加算する週数。負の値の場合もあるLocalDate。null以外DateTimeException - 結果がサポートされている日付範囲を超える場合public LocalDate plusDays(long daysToAdd)
LocalDateのコピーを返します。
 このメソッドは、指定された量を日フィールドに加算し、結果が有効のままであるように、必要に応じて月および年フィールドを増分します。 この結果が無効になるのは、最大/最小の年を超える場合のみです。
たとえば、2008-12-31に1日を加算すると、2009-01-01という結果になります。
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
daysToAdd - 加算する日数。負の値の場合もあるLocalDate。null以外DateTimeException - 結果がサポートされている日付範囲を超える場合public LocalDate minus(TemporalAmount amountToSubtract)
 これは、指定された量を減算して、この日付に基づくLocalDateを返します。 この量は通常Periodですが、TemporalAmountインタフェースを実装する他のどの型であってもかまいません。 
 
 計算は、TemporalAmount.subtractFrom(Temporal)を呼び出すことによって量オブジェクトに委譲されます。 量実装は減算を任意の方法で自由に実装できますが、通常はminus(long, TemporalUnit)にコールバックします。 正常に減算できるかどうかを判断するには、量実装のドキュメントを参照してください。 
 
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
ChronoLocalDateのminusTemporalのminusamountToSubtract - 減算する量、nullでないLocalDate。null以外DateTimeException - 減算ができない場合ArithmeticException - 数値のオーバーフローが発生した場合public LocalDate minus(long amountToSubtract, TemporalUnit unit)
 これは、その単位での量を減算して、この日付に基づくLocalDateを返します。 量を減算できない場合、単位がサポートされていないか他の理由のために、例外がスローされます。 
 
 このメソッドは、量を符号反転したplus(long, TemporalUnit)と同等です。 加算および減算がどのように行われるかについての詳しい説明は、そのメソッドを参照してください。 
 
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
ChronoLocalDateのminusTemporalのminusamountToSubtract - 結果から減算する単位の量、負も可unit - 減算する量の単位、nullでないLocalDate。null以外DateTimeException - 減算ができない場合UnsupportedTemporalTypeException - 単位がサポートされていない場合ArithmeticException - 数値のオーバーフローが発生した場合public LocalDate minusYears(long yearsToSubtract)
LocalDateのコピーを返します。
 このメソッドは、3つのステップで、指定された量を年フィールドから減算します。
たとえば、2008-02-29 (うるう年)から1年を減算すると、2007-02-29(標準の年)という無効な日付が生じます。 無効な結果を返す代わりに、その月の最後の有効な日である2007-02-28が選択されます。
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
yearsToSubtract - 減算する年数。負の値の場合もあるLocalDate。null以外DateTimeException - 結果がサポートされている日付範囲を超える場合public LocalDate minusMonths(long monthsToSubtract)
LocalDateのコピーを返します。
 このメソッドは、3つのステップで、指定された量を月フィールドから減算します。
たとえば、2007-03-31から1月を減算すると、2007-02-31という無効な日付が生じます。 無効な結果を返す代わりに、その月の最後の有効な日である2007-02-28が選択されます。
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
monthsToSubtract - 減算する月数。負の値の場合もあるLocalDate。null以外DateTimeException - 結果がサポートされている日付範囲を超える場合public LocalDate minusWeeks(long weeksToSubtract)
LocalDateのコピーを返します。
 このメソッドは、指定された週単位の量を日フィールドから減算し、結果が有効のままであるように、必要に応じて月および年フィールドを減らします。 この結果が無効になるのは、最大/最小の年を超える場合のみです。
たとえば、2009-01-07から1週間を減算すると、2008-12-31という結果になります。
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
weeksToSubtract - 減算する週数。負の値の場合もあるLocalDate。null以外DateTimeException - 結果がサポートされている日付範囲を超える場合public LocalDate minusDays(long daysToSubtract)
LocalDateのコピーを返します。
 このメソッドは、指定された量を日フィールドから減算し、結果が有効のままであるように、必要に応じて月および年フィールドを減らします。 この結果が無効になるのは、最大/最小の年を超える場合のみです。
たとえば、2009-01-01から1日を減算すると、2008-12-31という結果になります。
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
daysToSubtract - 減算する日数。負の値の場合もあるLocalDate。null以外DateTimeException - 結果がサポートされている日付範囲を超える場合public <R> R query(TemporalQuery<R> query)
 これは指定された問合せ戦略オブジェクトを使用してこの日付を問い合わせます。 TemporalQueryオブジェクトは結果を取得するために使用するロジックを定義します。 このメソッドの結果を理解するには、問合せのドキュメントをお読みください。 
 
 このメソッドの結果は、thisを引数として渡して、指定した問合せでTemporalQuery.queryFrom(TemporalAccessor)メソッドを呼び出すことによって取得します。
query、インタフェースChronoLocalDateTemporalAccessorのqueryR - 結果の型query - 呼び出す問合せ、null以外DateTimeException - 問い合わせできない場合(問合せによって定義される)ArithmeticException - 数値のオーバーフローが発生した場合(問合せによって定義される)public Temporal adjustInto(Temporal temporal)
これは、日付をこれと同じになるように変更して、入力と同じ識別可能な型の一時オブジェクトを返します。
 調整は、ChronoField.EPOCH_DAYをフィールドとして渡してTemporal.with(TemporalField, long)を使用する場合と同等です。
 
 ほとんどのケースで、Temporal.with(TemporalAdjuster)を使用して、呼び出しパターンを逆にすると明確になります。
 
// these two lines are equivalent, but the second approach is recommended temporal = thisLocalDate.adjustInto(temporal); temporal = temporal.with(thisLocalDate);
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
adjustInto、インタフェースChronoLocalDateTemporalAdjusterのadjustIntotemporal - 調整するターゲット・オブジェクト、null以外DateTimeException - 調整を実行できない場合ArithmeticException - 数値のオーバーフローが発生した場合public long until(Temporal endExclusive, TemporalUnit unit)
 これは、1つのTemporalUnitを単位として、2つのLocalDateオブジェクト間の時間量を計算します。 開始点と終了点はthisと指定された日付です。 終了が開始より前である場合、結果は負になります。 このメソッドに渡されたTemporalは、from(TemporalAccessor)を使用してLocalDateに変換されます。 たとえば、2つの日付間の日数での量は、startDate.until(endDate, DAYS)を使用して計算できます。 
 
計算では、2つの日付間の完全な単位の数を表す整数を返します。 たとえば、2012-06-15と2012-08-14の間の月単位の量は、2か月には1日足りないため、1か月のみとなります。
 このメソッドを使用する等価な方法が2つあります。 1つ目はこのメソッドを呼び出すことです。 2つ目はTemporalUnit.between(Temporal, Temporal)を使用することです。 
 
// these two lines are equivalent amount = start.until(end, MONTHS); amount = MONTHS.between(start, end);この選択は、コードが読みやすくなるのはどちらかに基づいて行ってください。
 計算はChronoUnitのこのメソッドに実装します。 サポートされている単位は、DAYS、WEEKS、MONTHS、YEARS、DECADES、CENTURIES、MILLENNIA、およびERASです。 その他のChronoUnit値は例外をスローします。 
 
 単位がChronoUnitでない場合、このメソッドの結果は、thisを1つ目の引数として、変換される入力temporal (一時)を2つ目の引数として渡してTemporalUnit.between(Temporal, Temporal)を呼び出すことによって取得します。
 
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
ChronoLocalDateのuntilTemporalのuntilendExclusive - LocalDateに変換される終了日(これを含まない)。null以外unit - 量を測定する単位、null以外DateTimeException - その量を計算できないか、終了時間をLocalDateに変換できない場合UnsupportedTemporalTypeException - 単位がサポートされていない場合ArithmeticException - 数値のオーバーフローが発生した場合public Period until(ChronoLocalDate endDateExclusive)
Periodとして計算します。
 
 これは、年数、月数、および日数を単位として、2つの日付の間の期間を計算します。 開始点と終了点はthisと指定された日付です。 終了が開始より前である場合、結果は負になります。 マイナス記号は年、月、日のそれぞれで同じになります。 
 
この計算は、ISOの暦体系を使って行われます。 必要に応じて、入力された日付がISOに変換されます。
 開始日は含まれますが、終了日は含まれません。 この期間を計算するには、完全な月を削除してから、残りの日数を計算し、両方が同じ符号を持つように調整します。 その後、1年12か月に基づいて、月の数が年数と月数に正規化されます。 月の最終日が月の開始日に等しいか、それよりも大きい場合、月は完全なものとみなされます。 たとえば、2010-01-15から2011-03-18までは「1年と2か月と3日」です。 
 
 このメソッドを使用する等価な方法が2つあります。 1つ目はこのメソッドを呼び出すことです。 2つめは、Period.between(LocalDate, LocalDate)を使用することです。 
 
// these two lines are equivalent period = start.until(end); period = Period.between(start, end);この選択は、コードが読みやすくなるのはどちらかに基づいて行ってください。
ChronoLocalDateのuntilendDateExclusive - 終了日、排他的、任意の暦で可能、null以外public String format(DateTimeFormatter formatter)
この日付はフォーマッタに渡され、文字列が生成されます。
format、インタフェースChronoLocalDateformatter - 使用するフォーマッタ、null以外DateTimeException - 出力時にエラーが発生した場合public LocalDateTime atTime(LocalTime time)
LocalDateTimeを作成します。
 
 これは、この日付の指定された時間から形成されたLocalDateTimeを返します。 日付と時間のすべての可能性のある組合わせが有効です。 
ChronoLocalDateのatTimetime - 組み合せる時間。null以外public LocalDateTime atTime(int hour, int minute)
LocalDateTimeを作成します。
 
 これは、この日付の指定された時と分から形成されたLocalDateTimeを返します。 秒およびナノ秒のフィールドはゼロに設定されます。 個々の時間フィールドは、その有効な範囲内にする必要があります。 日付と時間のすべての可能性のある組合わせが有効です。 
hour - 使用する時(0-23)minute - 使用する分(0-59)DateTimeException - いずれかのフィールドの値が範囲外にある場合public LocalDateTime atTime(int hour, int minute, int second)
LocalDateTimeを作成します。
 
 これは、この日付の指定された時、分、および秒から形成されたLocalDateTimeを返します。 ナノ秒フィールドはゼロに設定されます。 個々の時間フィールドは、その有効な範囲内にする必要があります。 日付と時間のすべての可能性のある組合わせが有効です。 
hour - 使用する時(0-23)minute - 使用する分(0-59)second - 表される秒(0-59)DateTimeException - いずれかのフィールドの値が範囲外にある場合public LocalDateTime atTime(int hour, int minute, int second, int nanoOfSecond)
LocalDateTimeを作成します。
 
 これは、この日付の指定された時、分、秒、およびナノ秒から形成されたLocalDateTimeを返します。 個々の時間フィールドは、その有効な範囲内にする必要があります。 日付と時間のすべての可能性のある組合わせが有効です。 
hour - 使用する時(0-23)minute - 使用する分(0-59)second - 表される秒(0-59)nanoOfSecond - 表現する「1秒のうちのナノ秒」、0から999,999,999DateTimeException - いずれかのフィールドの値が範囲外にある場合public OffsetDateTime atTime(OffsetTime time)
OffsetDateTimeを作成します。
 
 これは、この日付の指定された時間から形成されたOffsetDateTimeを返します。 日付と時間のすべての可能性のある組合わせが有効です。 
time - 組み合せる時間。null以外public LocalDateTime atStartOfDay()
LocalDateTimeを作成します。
 
 これは、この日付の深夜零時(00:00)から形成された、この日付の開始時のLocalDateTimeを返します。
public ZonedDateTime atStartOfDay(ZoneId zone)
サマー・タイムなどのタイムゾーン・ルールは、すべてのローカル日付/時間が指定されたゾーンに対して有効であるとはかぎらないことを意味しているので、ローカル日付/時間が深夜零時にならないことがあります。
ほとんどの場合に、ローカル日付/時間の有効なオフセットは1つだけです。 重複が発生した場合は、有効なオフセットが2つ存在するため、その日付で最初に現れた深夜零時に対応する、早い方のオフセットが使用されます。 ギャップが発生した場合、ゾーン付きの日付/時間はそのギャップ直後のインスタントを表します。
 ゾーンIDがZoneOffsetである場合、結果には常に深夜零時の時間が含まれます。
 
 指定されたタイムゾーンの特定の時間に変換するには、atTime(LocalTime)を呼び出し、その後にLocalDateTime.atZone(ZoneId)を呼び出します。
zone - 使用するゾーンID、null以外public long toEpochDay()
ChronoLocalDate
 Epoch Day countは日の単純な増分カウントで、日0は1970-01-01 (ISO)です。 この定義は、すべての暦で同じであり、変換が可能です。 
 
 このデフォルトの実装は、EPOCH_DAYフィールドを問い合わせます。
ChronoLocalDateのtoEpochDaypublic int compareTo(ChronoLocalDate other)
 この比較は主として日付(もっとも早いものからもっとも遅いものまで)に基づいています。 Comparableに定義されているとおりに、「equalsと一致」しています。 
 
 比較対象のすべての日付がLocalDateのインスタンスである場合、比較は完全にその日付に基づいて行われます。 比較対象の日付の中に異なる暦のものが含まれている場合、その暦も考慮されます(ChronoLocalDate.compareTo(java.time.chrono.ChronoLocalDate)を参照)。 
Comparable<ChronoLocalDate>のcompareTocompareTo、インタフェースChronoLocalDateother - 比較する他方の日付、null以外public boolean isAfter(ChronoLocalDate other)
これは、この日付がローカル時系列上のもう一方の日付より後の時点を表しているかどうかを確認します。
LocalDate a = LocalDate.of(2012, 6, 30); LocalDate b = LocalDate.of(2012, 7, 1); a.isAfter(b) == false a.isAfter(a) == false b.isAfter(a) == true
 このメソッドは、ローカル時系列上の2つの日付の位置のみを考慮します。 暦(暦体系)は考慮に入れません。 これはcompareTo(ChronoLocalDate)での比較とは異なりますが、ChronoLocalDate.timeLineOrder()とは同じ方法です。 
isAfter、インタフェースChronoLocalDateother - 比較する他方の日付、null以外public boolean isBefore(ChronoLocalDate other)
これは、この日付がローカル時系列上のもう一方の日付より前の時点を表しているかどうかを確認します。
LocalDate a = LocalDate.of(2012, 6, 30); LocalDate b = LocalDate.of(2012, 7, 1); a.isBefore(b) == true a.isBefore(a) == false b.isBefore(a) == false
 このメソッドは、ローカル時系列上の2つの日付の位置のみを考慮します。 暦(暦体系)は考慮に入れません。 これはcompareTo(ChronoLocalDate)での比較とは異なりますが、ChronoLocalDate.timeLineOrder()とは同じ方法です。 
isBefore、インタフェースChronoLocalDateother - 比較する他方の日付、null以外public boolean isEqual(ChronoLocalDate other)
これは、この日付がローカル時系列上のもう一方の日付と同じ時点を表しているかどうかを確認します。
LocalDate a = LocalDate.of(2012, 6, 30); LocalDate b = LocalDate.of(2012, 7, 1); a.isEqual(b) == false a.isEqual(a) == true b.isEqual(a) == false
 このメソッドは、ローカル時系列上の2つの日付の位置のみを考慮します。 暦(暦体系)は考慮に入れません。 これはcompareTo(ChronoLocalDate)での比較とは異なりますが、ChronoLocalDate.timeLineOrder()とは同じ方法です。 
isEqual、インタフェースChronoLocalDateother - 比較する他方の日付、null以外public boolean equals(Object obj)
 このLocalDateをもう一方と比較して、その日付が同じであることを確認します。
 
 LocalDate型のオブジェクトのみが比較され、それ以外の型はfalseを返します。 2つの異なる暦の日付など、2つのTemporalAccessorインスタンスの日付を比較するには、コンパレータとしてChronoField.EPOCH_DAYを使用します。 
ChronoLocalDateのequalsequals、クラスObjectobj - チェックするオブジェクト、nullはfalseを返すObject.hashCode()、HashMappublic int hashCode()
ChronoLocalDateのhashCodehashCode、クラスObjectObject.equals(java.lang.Object), System.identityHashCode(java.lang.Object)public String toString()
Stringとして出力します(2007-12-03など)。
 
 この出力は、ISO-8601形式のuuuu-MM-ddになります。
ChronoLocalDateのtoStringtoString、クラスObject バグまたは機能を送信 
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。 そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。 
 Copyright © 1993, 2025, Oracle and/or its affiliates.  All rights reserved.  Use is subject to license terms.  Documentation Redistribution Policyも参照してください。