- すべての実装されたインタフェース:
Serializable
,Comparable<ChronoLocalDate>
,ChronoLocalDate
,Temporal
,TemporalAccessor
,TemporalAdjuster
この日付はヒジュラ暦のいずれかのバリアントを使用して処理されます。
ヒジュラ暦は、グレゴリオ暦と1年の合計日が異なり、各月の長さは、月が地球の周りを一周する期間に基づきます(連続する新月の間として)。 サポートされるバリアントについては、HijrahChronology
を参照してください。
各HijrahDateは特定のHijrahChronologyに結合されて作成されます。同じ暦が日付から計算された各HijrahDateに伝播されます。 別のヒジュラ暦のバリアントを使用するには、そのHijrahChronologyを使用して、新しいHijrahDateインスタンスを作成することができます。 または、withVariant(java.time.chrono.HijrahChronology)
メソッドを使用して、新しいHijrahChronologyに変換できます。
これはvalue-basedクラスです。プログラマは、equalのインスタンスを交換可能として扱い、同期にインスタンスを使用しないようにする必要があります。そうしないと、予期しない動作が発生する可能性があります。 たとえば、将来のリリースでは、同期が失敗する可能性があります。 比較する場合は、equals
メソッドを使用することをお薦めします。
- 実装要件:
- このクラスは不変でスレッドセーフです。
- 導入されたバージョン:
- 1.8
- 関連項目:
-
メソッドのサマリー
修飾子と型メソッド説明final ChronoLocalDateTime
<HijrahDate> この日付を時間と組み合わせて、ChronoLocalDateTime
を作成します。boolean
暦を含めて、この日付を別の日付と比較します。static HijrahDate
from
(TemporalAccessor temporal) 時間的オブジェクトからイスラム・ウム・アルクラ暦のHijrahDate
を取得します。ヒジュラ暦体系であるこの日付の暦を取得します。getEra()
この日付で使用可能な紀元を取得します。long
getLong
(TemporalField field) 指定されたフィールドの値をlong
として取得します。int
hashCode()
この日付のハッシュ・コード。boolean
ヒジュラ暦体系のルールに従って、年がうるう年であるかどうかをチェックします。int
この日付によって表される月の長さを返します。int
この日付によって表される年の長さを返します。minus
(long amountToSubtract, TemporalUnit unit) 指定された期間を減算して、このオブジェクトと同じ型のオブジェクトを返します。minus
(TemporalAmount amount) 量を減算して、このオブジェクトと同じ型のオブジェクトを返します。static HijrahDate
now()
デフォルトのタイムゾーンのイスラム・ウム・アルクラ暦の現在のHijrahDate
を取得します。static HijrahDate
指定されたクロックからイスラム・ウム・アルクラ暦の現在のHijrahDate
を取得します。static HijrahDate
指定されたタイムゾーンのイスラム・ウム・アルクラ暦の現在のHijrahDate
を取得します。static HijrahDate
of
(int prolepticYear, int month, int dayOfMonth) 先発暦の年、年の月、および「月の日」フィールドからイスラム・ウム・アルクラ暦のHijrahDate
を取得します。plus
(long amountToAdd, TemporalUnit unit) このオブジェクトと同じ型のオブジェクトに指定された期間を追加したものを返します。plus
(TemporalAmount amount) このオブジェクトと同じ型のオブジェクトにある時間を追加したものを返します。toString()
この日付をString
として出力します。until
(ChronoLocalDate endDate) この日付からもう一方の日付までの期間をChronoPeriod
として計算します。long
until
(Temporal endExclusive, TemporalUnit unit) もう一方の日付までの時間量を指定された単位で計算します。with
(TemporalAdjuster adjuster) 調整を行って、このオブジェクトと同じ型の調整済のオブジェクトを返します。with
(TemporalField field, long newValue) 指定されたフィールドを変更して、このオブジェクトと同じ型のオブジェクトを返します。withVariant
(HijrahChronology chronology) リクエストされた暦を使ってHijrahDate
を返します。インタフェースjava.time.chrono.ChronoLocalDateで宣言されたメソッド
adjustInto, compareTo, format, isAfter, isBefore, isEqual, isSupported, isSupported, query, toEpochDay, toString, until
インタフェースjava.time.temporal.TemporalAccessorで宣言されたメソッド
get, range
-
メソッドの詳細
-
now
public static HijrahDate now()デフォルトのタイムゾーンのイスラム・ウム・アルクラ暦の現在のHijrahDate
を取得します。これは、デフォルトのタイムゾーンの
system clock
を問い合わせ、現在の日付を取得します。このメソッドを使用すると、クロックがハードコードされているため、テストに代替のクロックを使用できないようにします。
- 戻り値:
- システムクロックとデフォルトのタイムゾーンを使用した現在の日付、null以外
-
now
public static HijrahDate now(ZoneId zone) 指定されたタイムゾーンのイスラム・ウム・アルクラ暦の現在のHijrahDate
を取得します。これは
system clock
を問い合わせて、現在の日付を取得します。 タイムゾーンを指定すると、デフォルトのタイムゾーンへの依存を避けられます。このメソッドを使用すると、クロックがハードコードされているため、テストに代替のクロックを使用できないようにします。
- パラメータ:
zone
- 使用するゾーンID、null以外- 戻り値:
- システムクロックを使用した現在の日付、null以外
-
now
public static HijrahDate now(Clock clock) 指定されたクロックからイスラム・ウム・アルクラ暦の現在のHijrahDate
を取得します。これは指定されたクロックを問い合わせ、現在の日付(今日)を取得します。 このメソッドを使用すると、テストに代替のクロックを使用できます。 代替のクロックは依存性注入を使用して導入できます。
- パラメータ:
clock
- 使用するクロック、null以外- 戻り値:
- 現在の日付、null以外
- 例外:
DateTimeException
- 現在の日付を取得できない場合
-
of
public static HijrahDate of(int prolepticYear, int month, int dayOfMonth) 先発暦の年、年の月、および「月の日」フィールドからイスラム・ウム・アルクラ暦のHijrahDate
を取得します。これは、指定されたフィールドで
HijrahDate
を返します。 日は年と月に対して有効である必要があり、そうでない場合は、例外がスローされます。- パラメータ:
prolepticYear
- ヒジュラ暦の先発暦の年month
- ヒジュラ暦の年の月、1-12dayOfMonth
- ヒジュラ暦の「月の日」、1-30- 戻り値:
- ヒジュラ暦体系の日付、null以外
- 例外:
DateTimeException
- いずれかのフィールドの値が範囲外である場合、または「月の日」が年の月に対して無効である場合
-
from
public static HijrahDate from(TemporalAccessor temporal) 時間的オブジェクトからイスラム・ウム・アルクラ暦のHijrahDate
を取得します。これは、指定された時間的オブジェクトに基づいてヒジュラ暦体系での日付を取得します。
TemporalAccessor
は任意の日付と時間情報のセットを表し、このファクトリがHijrahDate
のインスタンスに変換します。変換では一般に、暦体系全体で標準化された
EPOCH_DAY
フィールドを使用します。このメソッドは関数型インタフェース
TemporalQuery
のシグネチャに一致するため、メソッド参照HijrahDate::from
を介して、問合せとして使用できます。- パラメータ:
temporal
- 変換する一時オブジェクト、null以外- 戻り値:
- ヒジュラ暦体系の日付、null以外
- 例外:
DateTimeException
-HijrahDate
に変換できない場合
-
getChronology
public HijrahChronology getChronology()ヒジュラ暦体系であるこの日付の暦を取得します。Chronology
は使用中の暦体系を表します。ChronoField
の紀元およびその他のフィールドは暦によって定義されます。- 定義:
- インタフェース
ChronoLocalDate
のgetChronology
- 戻り値:
- ヒジュラ暦、null以外
-
getEra
public HijrahEra getEra()この日付で使用可能な紀元を取得します。ヒジュラ暦体系には、
HijrahEra
によって定義される1つの紀元「AH」があります。- 定義:
- インタフェース
ChronoLocalDate
のgetEra
- 戻り値:
- この日付に該当する紀元、null以外
-
lengthOfMonth
public int lengthOfMonth()この日付によって表される月の長さを返します。これは月の長さを日数で返します。 ヒジュラ暦体系の月の長さは29日から30日でさまざまに異なります。
- 定義:
- インタフェース
ChronoLocalDate
のlengthOfMonth
- 戻り値:
- 日数での月の長さ
-
lengthOfYear
public int lengthOfYear()この日付によって表される年の長さを返します。これは年の長さを日数で返します。 ヒジュラ暦体系の年は、一般にISO暦体系より短くなります。
- 定義:
- インタフェース
ChronoLocalDate
のlengthOfYear
- 戻り値:
- 日数での年の長さ
-
getLong
public long getLong(TemporalField field) 次のインタフェースからコピーされた説明:TemporalAccessor
指定されたフィールドの値をlong
として取得します。これは、指定されたフィールドの値について日付/時間に問い合せます。 返される値はフィールドに有効な値の範囲外になることがあります。 フィールドがサポートされていないか、他の何らかの理由で、日付/時間で値を返すことができない場合、例外がスローされます。
- 定義:
- インタフェース
TemporalAccessor
のgetLong
- パラメータ:
field
- 取得するフィールド、null以外- 戻り値:
- フィールドの値
-
with
public HijrahDate with(TemporalField field, long newValue) インタフェース:Temporal
からコピーされた説明指定されたフィールドを変更して、このオブジェクトと同じ型のオブジェクトを返します。これは、指定されたフィールドの値を変更して、このオブジェクトに基づいて新しいオブジェクトを返します。 たとえば、
LocalDate
で、これは年、月、または「月の日」を設定するために使用できます。 返されるオブジェクトはこのオブジェクトと同じ識別可能な型を持ちます。フィールドの変更が完全には定義されていない場合もあります。 たとえば、ターゲット・オブジェクトが1月31日を表す日付である場合、月を2月に変更することは不明な場合があります。 このようなケースでは、フィールドは結果の解決を担当します。 通常は1つ前の有効な日付が選択され、この例の場合は2月の最後の有効な日になります。
- 定義:
- インタフェース
ChronoLocalDate
のwith
- 定義:
- インタフェース
Temporal
のwith
- パラメータ:
field
- 結果に設定するフィールド、null以外newValue
- 結果のフィールドの新しい値- 戻り値:
- 指定されたフィールドが設定された同じ型のオブジェクト、null以外
-
with
public HijrahDate with(TemporalAdjuster adjuster) 調整を行って、このオブジェクトと同じ型の調整済のオブジェクトを返します。これは、指定されたアジャスタのルールに従って、この日付/時間を調整します。 単純なアジャスタは、年フィールドなどの1つのフィールドだけを設定するなどです。 複雑なアジャスタは、日付を月の最後の日に設定するなどです。 一般的な調整の選択は、
TemporalAdjusters
で指定します。 これらには、「月の最後の日」や「次の水曜日」を見つけることが含まれます。 アジャスタは、さまざまな長さの月やうるう年などの特別なケースの処理を担当します。このメソッドを使用する方法と理由を示すいくつかのサンプル・コード:
date = date.with(Month.JULY); // most key classes implement TemporalAdjuster date = date.with(lastDayOfMonth()); // static import from Adjusters date = date.with(next(WEDNESDAY)); // static import from Adjusters and DayOfWeek
- 定義:
- インタフェース
ChronoLocalDate
のwith
- 定義:
- インタフェース
Temporal
のwith
- パラメータ:
adjuster
- 使用するアジャスタ、null以外- 戻り値:
- 指定された調整を行った同じ型のオブジェクト、null以外
- 例外:
DateTimeException
- 調整を実行できない場合。 たとえば、アジャスタでISO暦が必要な場合ArithmeticException
- 数値のオーバーフローが発生した場合
-
withVariant
public HijrahDate withVariant(HijrahChronology chronology) リクエストされた暦を使ってHijrahDate
を返します。年、月、日は新しく要求されたHijrahChronologyに対してチェックされます。 暦の月の長さが短い場合、月の最終日になるように日が減らされます。
- パラメータ:
chronology
- 新しいHijrahChonology、null以外- 戻り値:
- 要求されたHijrahChronologyでのHijrahDate、null以外
-
plus
public HijrahDate plus(TemporalAmount amount) このオブジェクトと同じ型のオブジェクトにある時間を追加したものを返します。これは、このtemporal (一時)を調整し、指定された量のルールに従って加算します。 この量は通常
Period
ですが、Duration
など、TemporalAmount
インタフェースを実装する他のどの型であってもかまいません。このメソッドを使用する方法と理由を示すいくつかのサンプル・コード:
date = date.plus(period); // add a Period instance date = date.plus(duration); // add a Duration instance date = date.plus(workingDays(6)); // example user-written workingDays method
plus
の後にminus
を呼び出しても、同じ日付/時間が返されることは保証されません。- 定義:
- インタフェース
ChronoLocalDate
のplus
- 定義:
- インタフェース
Temporal
のplus
- パラメータ:
amount
- 追加する量、null以外- 戻り値:
- 指定された調整を行った同じ型のオブジェクト、null以外
- 例外:
DateTimeException
- 加算できない場合ArithmeticException
- 数値のオーバーフローが発生した場合
-
minus
public HijrahDate minus(TemporalAmount amount) 量を減算して、このオブジェクトと同じ型のオブジェクトを返します。これは、このtemporal (一時)を調整し、指定された量のルールに従って減算します。 この量は通常
Period
ですが、Duration
など、TemporalAmount
インタフェースを実装する他のどの型であってもかまいません。このメソッドを使用する方法と理由を示すいくつかのサンプル・コード:
date = date.minus(period); // subtract a Period instance date = date.minus(duration); // subtract a Duration instance date = date.minus(workingDays(6)); // example user-written workingDays method
plus
の後にminus
を呼び出しても、同じ日付/時間が返されることは保証されません。- 定義:
- インタフェース
ChronoLocalDate
のminus
- 定義:
- インタフェース
Temporal
のminus
- パラメータ:
amount
- 減算する量、null以外- 戻り値:
- 指定された調整を行った同じ型のオブジェクト、null以外
- 例外:
DateTimeException
- 減算ができない場合ArithmeticException
- 数値のオーバーフローが発生した場合
-
isLeapYear
public boolean isLeapYear()ヒジュラ暦体系のルールに従って、年がうるう年であるかどうかをチェックします。- 定義:
- インタフェース
ChronoLocalDate
のisLeapYear
- 戻り値:
- この日付がうるう年にある場合はtrue
-
plus
public HijrahDate plus(long amountToAdd, TemporalUnit unit) インタフェース:Temporal
からコピーされた説明このオブジェクトと同じ型のオブジェクトに指定された期間を追加したものを返します。このメソッドは、指定された期間を加算して、このオブジェクトに基づいて新しいオブジェクトを返します。 たとえば、
LocalDate
で、これは年、月、または日の数を加算するために使用できます。 返されるオブジェクトはこのオブジェクトと同じ識別可能な型を持ちます。フィールドの変更が完全には定義されていない場合もあります。 たとえば、ターゲット・オブジェクトが1月31日を表す日付である場合、1か月を加算することは不明な場合があります。 このようなケースでは、フィールドは結果の解決を担当します。 通常は1つ前の有効な日付が選択され、この例の場合は2月の最後の有効な日になります。
- 定義:
- インタフェース
ChronoLocalDate
のplus
- 定義:
- インタフェース
Temporal
のplus
- パラメータ:
amountToAdd
- 加算する指定された単位の量、負の場合もあるunit
- 加算する量の単位、nullでない- 戻り値:
- 指定された期間を加算した同じ型のオブジェクト、null以外
-
minus
public HijrahDate minus(long amountToSubtract, TemporalUnit unit) インタフェース:Temporal
からコピーされた説明指定された期間を減算して、このオブジェクトと同じ型のオブジェクトを返します。このメソッドは、指定された期間を減算して、このオブジェクトに基づいて新しいオブジェクトを返します。 たとえば、
LocalDate
で、これは年、月、または日の数を減算するために使用できます。 返されるオブジェクトはこのオブジェクトと同じ識別可能な型を持ちます。フィールドの変更が完全には定義されていない場合もあります。 たとえば、ターゲットオブジェクトが3月31日を表す日付である場合、1か月を減算することは不明な場合があります。 このようなケースでは、フィールドは結果の解決を担当します。 通常は1つ前の有効な日付が選択され、この例の場合は2月の最後の有効な日になります。
- 定義:
- インタフェース
ChronoLocalDate
のminus
- 定義:
- インタフェース
Temporal
のminus
- パラメータ:
amountToSubtract
- 減算する指定された単位の量、負の場合もあるunit
- 減算する量の単位、nullでない- 戻り値:
- 指定された期間が減算された同じ型のオブジェクト、null以外
-
atTime
public final ChronoLocalDateTime<HijrahDate> atTime(LocalTime localTime) 次のインタフェースからコピーされた説明:ChronoLocalDate
この日付を時間と組み合わせて、ChronoLocalDateTime
を作成します。これは、指定された時間でこの日付から形成された
ChronoLocalDateTime
を返します。 日付と時間のすべての可能性のある組合わせが有効です。- 定義:
- インタフェース
ChronoLocalDate
のatTime
- パラメータ:
localTime
- 使用するローカル時間、null以外- 戻り値:
- この日付と指定された時間から形成されたローカル日付/時間、null以外
-
until
public ChronoPeriod until(ChronoLocalDate endDate) 次のインタフェースからコピーされた説明:ChronoLocalDate
この日付からもう一方の日付までの期間をChronoPeriod
として計算します。これは2つの日付間の期間を計算します。 提供されたすべての暦で、年、月、日を使用して期間が計算されますが、
ChronoPeriod
APIでは、他の単位を使用して期間を表現できます。開始点と終了点は
this
と指定された日付です。 終了が開始より前である場合、結果は負になります。 マイナス記号は年、月、日のそれぞれで同じになります。計算はこの日付の暦を使用して実行されます。 必要に応じて、入力日が一致するように変換されます。
このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。
- 定義:
- インタフェース
ChronoLocalDate
のuntil
- パラメータ:
endDate
- 終了日(この日を含まない)、任意の暦で可能、null以外- 戻り値:
- この日付と終了日の間の期間、null以外
-
equals
public boolean equals(Object obj) 暦を含めて、この日付を別の日付と比較します。この
HijrahDate
を別の日付と比較して、日付が同じであることを確認します。HijrahDate
型のオブジェクトのみが比較され、それ以外の型はfalseを返します。 2つの異なる暦の日付など、2つのTemporalAccessor
インスタンスの日付を比較するには、コンパレータとしてChronoField.EPOCH_DAY
を使用します。- 定義:
- インタフェース
ChronoLocalDate
のequals
- パラメータ:
obj
- チェックするオブジェクト、nullはfalseを返す- 戻り値:
- これが他の日付と等しく、暦が等しい場合はtrue
- 関連項目:
-
hashCode
public int hashCode()この日付のハッシュ・コード。- 定義:
- インタフェース
ChronoLocalDate
のhashCode
- 戻り値:
- 暦と日付にのみ基づいた適切なハッシュ・コード
- 関連項目:
-
until
public long until(Temporal endExclusive, TemporalUnit unit) 次のインタフェースからコピーされた説明:ChronoLocalDate
もう一方の日付までの時間量を指定された単位で計算します。これは、1つの
TemporalUnit
の形で2つのChronoLocalDate
オブジェクト間の時間の量を計算します。 開始点と終了点はthis
と指定された日付です。 終了が開始より前である場合、結果は負になります。 このメソッドに渡されたTemporal
はChronology.date(TemporalAccessor)
を使用してChronoLocalDate
に変換されます。 計算では、2つの日付間の完全な単位の数を表す整数を返します。 たとえば、2つの日付間の日数での量は、startDate.until(endDate, DAYS)
を使用して計算できます。このメソッドを使用する等価な方法が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
のuntil
- 定義:
- インタフェース
Temporal
のuntil
- パラメータ:
endExclusive
- 終了日、排他的、同じ暦でChronoLocalDate
に変換される、null以外unit
- 量を測定する単位、null以外- 戻り値:
- この日付と終了日の間の時間の量
-
toString
public String toString()次のインタフェースからコピーされた説明:ChronoLocalDate
この日付をString
として出力します。出力には、完全なローカル日付が含まれます。
- 定義:
- インタフェース
ChronoLocalDate
のtoString
- オーバーライド:
toString
、クラスObject
- 戻り値:
- 書式設定済の日付、null以外
-