クラスMinguoChronology
- すべての実装されたインタフェース:
Serializable,Comparable<Chronology>,Chronology
この暦は民国暦体系のルールを定義します。 この暦体系は主に中華民国(台湾として知られる)で使用されています。 日付は0001-01-01 (民国)が 1912-01-01 (ISO)になるように調整されます。
フィールドの定義は次のとおりです。
- 紀元 - 現在の「民国」(ERA_ROC)と前の紀元(ERA_BEFORE_ROC)の2つの紀元があります。
- 紀元年 - 現在の紀元の紀元年は、1年のエポックから一様に増加していきます。 前の紀元は時間を遡るにつれて、年が1から増えていきます。 現在の紀元の値はISO先発暦の年から1911を引いた値と等しくなります。
- 先発暦の年 - 先発暦の年は、現在の紀元の紀元年と同じです。 前の紀元では、年は0で、次に負の値になります。 値はISO先発暦の年から1911を引いた値と等しくなります。
- 月 - 民国暦の月は正確にISO暦に一致します。
- 「月の日」 - 民国暦の「月の日」は正確にISO暦に一致します。
- 「年の日」 - 民国暦の「年の日」は正確にISO暦に一致します。
- うるう年 - 民国暦のうるう年のパターンは正確にISO暦に一致しするため、2つの暦の歩調がずれることはありません。
- 実装要件:
- このクラスは不変でスレッドセーフです。
- 導入されたバージョン:
- 1.8
- 関連項目:
-
フィールドのサマリー
フィールド -
メソッドのサマリー
修飾子と型メソッド説明date(int prolepticYear, int month, int dayOfMonth) 先発暦の年、月、および「月の日」フィールドから、民国暦体系のローカル日付を取得します。紀元、紀元年、月、および「月の日」フィールドから、民国暦体系のローカル日付を取得します。date(TemporalAccessor temporal) 別の時間的オブジェクトから、この暦のローカル日付を取得します。dateEpochDay(long epochDay) エポック日から、民国暦体系のローカル日付を取得します。dateNow()デフォルトのタイムゾーンのシステム・クロックからこの暦の現在のローカル日付を取得します。指定されたクロックからこの暦の現在のローカル日付を取得します。指定されたタイムゾーンのシステム・クロックからこの暦の現在のローカル日付を取得します。dateYearDay(int prolepticYear, int dayOfYear) 先発暦の年および「年の日」フィールドから、民国暦体系のローカル日付を取得します。dateYearDay(Era era, int yearOfEra, int dayOfYear) 紀元、紀元年、および「年の日」フィールドから、民国暦体系のローカル日付を取得します。eraOf(int eraValue) 数値から、暦の紀元オブジェクトを作成します。eras()暦の紀元のリストを取得します。基礎となる暦体系のカレンダ・タイプ(roc)を取得します。getId()暦のID (Minguo)を取得します。booleanMinguoChronologyはISOベースのクロノロジで、DAY_OF_QUARTERやQUARTER_OF_YEARなどのIsoFieldsのフィールドをサポートします。booleanisLeapYear(long prolepticYear) 指定された年がうるう年であるかどうかをチェックします。localDateTime(TemporalAccessor temporal) 別の時間的オブジェクトから、この暦のローカル日付/時間を取得します。intprolepticYear(Era era, int yearOfEra) 紀元と紀元年を指定して先発暦の年を計算します。range(ChronoField field) 指定されたフィールドの有効な値の範囲を取得します。resolveDate(Map<TemporalField, Long> fieldValues, ResolverStyle resolverStyle) 解析されたChronoFieldの値を解析時の日付に解決します。zonedDateTime(Instant instant, ZoneId zone) Instantからこの暦でChronoZonedDateTimeを取得します。zonedDateTime(TemporalAccessor temporal) もう一方のtemporal (一時)オブジェクトからこの暦でChronoZonedDateTimeを取得します。クラスjava.time.chrono.AbstractChronologyで宣言されたメソッド
compareTo, equals, hashCode, toStringインタフェースjava.time.chrono.Chronologyで宣言されたメソッド
epochSecond, epochSecond, getDisplayName, period
-
フィールド詳細
-
INSTANCE
public static final MinguoChronology INSTANCE民国暦のシングルトン・インスタンス。
-
-
メソッドの詳細
-
getId
public String getId()暦のID (Minguo)を取得します。このIDは
Chronologyを一意に識別します。 これは、Chronology.of(String)を使用して、Chronologyを検索するために使用できます。- 定義:
- インタフェース
ChronologyのgetId - 戻り値:
- 暦ID - Minguo
- 関連項目:
-
getCalendarType
public String getCalendarType()基礎となる暦体系のカレンダ・タイプ(roc)を取得します。カレンダ・タイプはUnicode Locale Data Markup Language (LDML)の仕様によって定義された識別子です。 これは、
Chronology.of(String)を使用して、Chronologyを検索するために使用できます。 それは、キー「ca」でLocale.getUnicodeLocaleType(String)からアクセス可能なロケールの一部としても使用できます。- 定義:
- インタフェース
ChronologyのgetCalendarType - 戻り値:
- 暦体系タイプ - roc
- 関連項目:
-
date
public MinguoDate date(Era era, int yearOfEra, int month, int dayOfMonth) 紀元、紀元年、月、および「月の日」フィールドから、民国暦体系のローカル日付を取得します。- 定義:
- インタフェース
Chronologyのdate - パラメータ:
era- 民国暦の紀元、null以外yearOfEra- 紀元の年month- 年の月dayOfMonth- 「月の日」- 戻り値:
- 民国暦のローカル日付、null以外
- スロー:
DateTimeException- 日付を作成できない場合ClassCastException-eraがMinguoEraでない場合
-
date
public MinguoDate date(int prolepticYear, int month, int dayOfMonth) 先発暦の年、月、および「月の日」フィールドから、民国暦体系のローカル日付を取得します。- 定義:
- インタフェース
Chronologyのdate - パラメータ:
prolepticYear- 先発暦の年month- 年の月dayOfMonth- 「月の日」- 戻り値:
- 民国暦のローカル日付、null以外
- スロー:
DateTimeException- 日付を作成できない場合
-
dateYearDay
public MinguoDate dateYearDay(Era era, int yearOfEra, int dayOfYear) 紀元、紀元年、および「年の日」フィールドから、民国暦体系のローカル日付を取得します。- 定義:
- インタフェース
ChronologyのdateYearDay - パラメータ:
era- 民国暦の紀元、null以外yearOfEra- 紀元の年dayOfYear- 「年の日」- 戻り値:
- 民国暦のローカル日付、null以外
- スロー:
DateTimeException- 日付を作成できない場合ClassCastException-eraがMinguoEraでない場合
-
dateYearDay
public MinguoDate dateYearDay(int prolepticYear, int dayOfYear) 先発暦の年および「年の日」フィールドから、民国暦体系のローカル日付を取得します。- 定義:
- インタフェース
ChronologyのdateYearDay - パラメータ:
prolepticYear- 先発暦の年dayOfYear- 「年の日」- 戻り値:
- 民国暦のローカル日付、null以外
- スロー:
DateTimeException- 日付を作成できない場合
-
dateEpochDay
public MinguoDate dateEpochDay(long epochDay) エポック日から、民国暦体系のローカル日付を取得します。- 定義:
- インタフェース
ChronologyのdateEpochDay - パラメータ:
epochDay- エポック日- 戻り値:
- 民国暦のローカル日付、null以外
- スロー:
DateTimeException- 日付を作成できない場合
-
dateNow
public MinguoDate dateNow()次のインタフェースからコピーされた説明:Chronologyデフォルトのタイムゾーンのシステム・クロックからこの暦の現在のローカル日付を取得します。これは、デフォルトのタイムゾーンの
system clockを問い合わせ、現在の日付を取得します。このメソッドを使用すると、クロックがハードコードされているため、テストに代替のクロックを使用できないようにします。
- 定義:
- インタフェース
ChronologyのdateNow - 戻り値:
- システムクロックとデフォルトのタイムゾーンを使用した現在のローカル日付、null以外
-
dateNow
public MinguoDate dateNow(ZoneId zone) 次のインタフェースからコピーされた説明:Chronology指定されたタイムゾーンのシステム・クロックからこの暦の現在のローカル日付を取得します。これは
system clockを問い合わせて、現在の日付を取得します。 タイムゾーンを指定すると、デフォルトのタイムゾーンへの依存を避けられます。このメソッドを使用すると、クロックがハードコードされているため、テストに代替のクロックを使用できないようにします。
- 定義:
- インタフェース
ChronologyのdateNow - パラメータ:
zone- 使用するゾーンID、null以外- 戻り値:
- システムクロックを使用した現在のローカル日付、null以外
-
dateNow
public MinguoDate dateNow(Clock clock) 次のインタフェースからコピーされた説明:Chronology指定されたクロックからこの暦の現在のローカル日付を取得します。これは指定されたクロックを問い合わせ、現在の日付(今日)を取得します。 このメソッドを使用すると、テストに代替のクロックを使用できます。 代替のクロックは
dependency injectionを使用して導入できます。- 定義:
- インタフェース
ChronologyのdateNow - パラメータ:
clock- 使用するクロック、null以外- 戻り値:
- 現在のローカル日付、null以外
-
date
public MinguoDate date(TemporalAccessor temporal) 次のインタフェースからコピーされた説明:Chronology別の時間的オブジェクトから、この暦のローカル日付を取得します。これは、指定された時間的オブジェクトに基づいてこの暦での日付を取得します。
TemporalAccessorは任意の日付と時間情報のセットを表し、このファクトリがChronoLocalDateのインスタンスに変換します。変換では一般に、暦体系全体で標準化された
EPOCH_DAYフィールドを使用します。このメソッドは関数型インタフェース
TemporalQueryのシグネチャに一致するため、メソッド参照aChronology::dateを介して、問合せとして使用できます。- 定義:
- インタフェース
Chronologyのdate - パラメータ:
temporal- 変換する一時オブジェクト、null以外- 戻り値:
- この暦でのローカル日付、null以外
- 関連項目:
-
localDateTime
public ChronoLocalDateTime<MinguoDate> localDateTime(TemporalAccessor temporal) 次のインタフェースからコピーされた説明:Chronology別の時間的オブジェクトから、この暦のローカル日付/時間を取得します。これは、指定された時間的オブジェクトに基づいてこの暦での日付/時間を取得します。
TemporalAccessorは任意の日付と時間情報のセットを表し、このファクトリがChronoLocalDateTimeのインスタンスに変換します。変換では、時間的オブジェクトから
ChronoLocalDateとLocalTimeを抽出し、組み合わせます。 実装では、関連オブジェクトと同等のそれらのフィールドにアクセスするなどの最適化を実行することが許可されます。 結果ではこの暦を使用します。このメソッドは関数型インタフェース
TemporalQueryのシグネチャに一致するため、メソッド参照aChronology::localDateTimeを介して、問合せとして使用できます。- 定義:
- インタフェース
ChronologyのlocalDateTime - パラメータ:
temporal- 変換する一時オブジェクト、null以外- 戻り値:
- この暦でのローカル日付/時間、null以外
- 関連項目:
-
zonedDateTime
public ChronoZonedDateTime<MinguoDate> zonedDateTime(TemporalAccessor temporal) 次のインタフェースからコピーされた説明:Chronologyもう一方のtemporal (一時)オブジェクトからこの暦でChronoZonedDateTimeを取得します。これは、指定された時間的オブジェクトに基づいてこの暦でのゾーン付きの日付/時間を取得します。
TemporalAccessorは任意の日付と時間情報のセットを表し、このファクトリがChronoZonedDateTimeのインスタンスに変換します。変換では、まず時間的オブジェクトから
ZoneIdを取得し、必要に応じて、ZoneOffsetを使用します。 次に、Instantを取得しようとし、必要に応じて、ChronoLocalDateTimeを使用します。 結果はZoneIdまたはZoneOffsetとInstantまたはChronoLocalDateTimeのいずれかの組み合わせです。 実装では、関連オブジェクトと同等のそれらのフィールドにアクセスするなどの最適化を実行することが許可されます。 結果ではこの暦を使用します。このメソッドは関数型インタフェース
TemporalQueryのシグネチャに一致するため、メソッド参照aChronology::zonedDateTimeを介して、問合せとして使用できます。- 定義:
- インタフェース
ChronologyのzonedDateTime - パラメータ:
temporal- 変換する一時オブジェクト、null以外- 戻り値:
- この暦でのゾーン付きの日付/時間、null以外
- 関連項目:
-
zonedDateTime
public ChronoZonedDateTime<MinguoDate> zonedDateTime(Instant instant, ZoneId zone) 次のインタフェースからコピーされた説明:ChronologyInstantからこの暦でChronoZonedDateTimeを取得します。これは、指定された同じインスタントで、ゾーン付きの日付/時間を取得します。
- 定義:
- インタフェース
ChronologyのzonedDateTime - パラメータ:
instant- 日付/時間の作成元のインスタント、null以外zone- タイムゾーン、null以外- 戻り値:
- ゾーン付きの日付/時間、null以外
-
isLeapYear
public boolean isLeapYear(long prolepticYear) 指定された年がうるう年であるかどうかをチェックします。民国暦のうるう年は、ISO暦のうるう年と一致して発生します。 このメソッドは渡される年を検証せず、サポートされる範囲内の年に対してのみ明確に定義された結果が得られます。
- 定義:
- インタフェース
ChronologyのisLeapYear - パラメータ:
prolepticYear- チェックする先発暦の年、範囲が検証されない- 戻り値:
- 年がうるう年の場合はtrue
-
prolepticYear
public int prolepticYear(Era era, int yearOfEra) 次のインタフェースからコピーされた説明:Chronology紀元と紀元年を指定して先発暦の年を計算します。これは紀元と紀元の年を単一の先発暦の年フィールドに組み合わせます。
JapaneseChronologyなど、暦で紀元が頻繁に使われている場合、紀元の年が紀元に照らして検証されます。 他の暦の場合、検証はオプションです。- 定義:
- インタフェース
ChronologyのprolepticYear - パラメータ:
era- 暦の正しいタイプの紀元、null以外yearOfEra- 暦の紀元の年- 戻り値:
- 先発暦の年
-
eraOf
public MinguoEra eraOf(int eraValue) 次のインタフェースからコピーされた説明:Chronology数値から、暦の紀元オブジェクトを作成します。この紀元は概念上、時系列の最大の区分です。 ほとんどの暦体系には、時系列を2つの紀元に分割する1つのエポックがあります。 ただし、一部には各指導者の統治期間に1つずつなど、複数の紀元があります。 正確な意味は、次の制約に従って、暦によって決定されます。
1970-01-01で使用する紀元は値が1である必要があります。 以降の紀元は、値が順に大きくなる必要があります。 以前の紀元は、値が順に小さくなる必要があります。 各暦は列挙または類似のシングルトンを参照して、紀元の値を提供する必要があります。
このメソッドは、指定された紀元の値に対して、正しいタイプのシングルトンの紀元を返します。
- 定義:
- インタフェース
ChronologyのeraOf - パラメータ:
eraValue- 紀元の値- 戻り値:
- 暦体系の紀元、null以外
-
eras
次のインタフェースからコピーされた説明:Chronology暦の紀元のリストを取得します。ほとんどの暦体系には、その中で年が意味を持つ紀元があります。 暦体系が紀元の概念をサポートしていない場合、空のリストを返す必要があります。
- 定義:
- インタフェース
Chronologyのeras - 戻り値:
- 暦の紀元のリスト、不変の場合がある、null以外
-
range
public ValueRange range(ChronoField field) 次のインタフェースからコピーされた説明:Chronology指定されたフィールドの有効な値の範囲を取得します。すべてのフィールドは
long整数で表現できます。 このメソッドは、その値の有効範囲を記述するオブジェクトを返します。結果は有効な最小値と最大値を記述しているだけなので、それらを深く解釈しすぎないことが重要です。 たとえば、範囲内の値であっても、フィールドに対して無効な場合があります。
このメソッドは、暦でフィールドをサポートしているかどうかに関係なく、結果を返します。
- 定義:
- インタフェース
Chronologyのrange - パラメータ:
field- 範囲を取得するフィールド、null以外- 戻り値:
- フィールドの有効値の範囲。null以外
-
resolveDate
public MinguoDate resolveDate(Map<TemporalField, Long> fieldValues, ResolverStyle resolverStyle) クラスからコピーされた説明:AbstractChronology解析されたChronoFieldの値を解析時の日付に解決します。ほとんどの
TemporalField実装は、フィールド上の解決メソッドを使用して解決されます。 これに対し、ChronoFieldクラスは暦に関連する意味のみを持つフィールドを定義します。 そのため、ChronoField日付フィールドは、ここで特定の暦のコンテキストで解決されます。ChronoFieldインスタンスはこのメソッドによって解決され、サブクラスでオーバーライドできます。EPOCH_DAY- 存在する場合、日付に変換され、他のすべての日付フィールドがこの日付に対して照合されます。PROLEPTIC_MONTH- 存在する場合、YEARとMONTH_OF_YEARに分割されます。 モードがstrictまたはsmartである場合、フィールドは検証されます。YEAR_OF_ERAとERA- 両方とも存在する場合、それらが組み合わされてYEARを形成します。 lenientモードではYEAR_OF_ERAの範囲は検証されず、smartおよびstrictモードでは検証されます。ERAは3つすべてのモードで範囲が検証されます。YEAR_OF_ERAのみが存在し、モードがsmartまたはlenientの場合、最後の使用可能な紀元と想定されます。 strictモードでは、紀元が想定されず、YEAR_OF_ERAはそのままの状態にされます。ERAのみが存在する場合、それはそのままの状態にされます。YEAR、MONTH_OF_YEAR、DAY_OF_MONTH- 3つすべてが存在する場合、それらが組み合わされて日付が形成されます。 3つすべてのモードで、YEARが検証されます。 モードがsmartまたはstrictの場合、月と日が検証されます。 モードがlenientの場合、要求された年の最初の月の最初の日で日付を作成し、次に月数での差、次に日数での差を加算する場合と等しい方法で、日付が組み合わされます。 モードがsmartで、「月の日」が年-月の最大より大きい場合、「月の日」は最後の「月の日」に調整されます。 モードがstrictの場合、3つのフィールドは有効な日付を形成している必要があります。YEARとDAY_OF_YEAR- 両方とも存在する場合、それらが組み合わされて日付が形成されます。 3つすべてのモードで、YEARが検証されます。 モードがlenientの場合、要求された年の最初の日で日付を作成し、次に日数での差を加算する場合と等しい方法で、日付が組み合わされます。 モードがsmartまたはstrictの場合、2つのフィールドは有効な日付を形成している必要があります。YEAR、MONTH_OF_YEAR、ALIGNED_WEEK_OF_MONTH、ALIGNED_DAY_OF_WEEK_IN_MONTH- 4つすべてが存在する場合、それらが組み合わされて日付が形成されます。 3つすべてのモードで、YEARが検証されます。 モードがlenientの場合、要求された年の最初の月の最初の日で日付を作成し、次に月数での差、次に週数での差、次に日数での差を加算する場合と等しい方法で、日付が組み合わされます。 モードがsmartまたはstrictの場合、4つすべてのフィールドがそれらの外側の範囲に対して検証されます。 次に、要求された年と月の最初の日で日付を作成し、次に週数と日数での量を加算して、それらの値に到達する場合と等しい方法で、日付が組み合わされます。 モードがstrictの場合、日付がさらに検証され、日と週の調整によって月が変更されていないかどうかがチェックされます。YEAR、MONTH_OF_YEAR、ALIGNED_WEEK_OF_MONTH、DAY_OF_WEEK- 4つすべてが存在する場合、それらが組み合わされて日付が形成されます。 このアプローチは、ALIGNED_DAY_OF_WEEK_IN_MONTHの年、月、および週についての上記の説明と同じです。 年、月、および週が処理されると、曜日が次または同じ一致する曜日で調整されます。YEAR、ALIGNED_WEEK_OF_YEAR、ALIGNED_DAY_OF_WEEK_IN_YEAR- 3つすべてが存在する場合、それらが組み合わされて日付が形成されます。 3つすべてのモードで、YEARが検証されます。 モードがlenientの場合、要求された年の最初の日で日付を作成し、次に週数での差、次に日数での差を加算する場合と等しい方法で、日付が組み合わされます。 モードがsmartまたはstrictの場合、3つすべてのフィールドがそれらの外側の範囲に対して検証されます。 次に、要求された年の最初の日で日付を作成し、次に週数と日数での量を加算して、それらの値に到達する場合と等しい方法で、日付が組み合わされます。 モードがstrictの場合、日付がさらに検証され、日と週の調整によって年が変更されていないかどうかがチェックされます。YEAR、ALIGNED_WEEK_OF_YEAR、DAY_OF_WEEK- 3つすべてが存在する場合、それらが組み合わされて日付が形成されます。 このアプローチは、ALIGNED_DAY_OF_WEEK_IN_YEARの年および週についての上記の説明と同じです。 年および週が処理されると、曜日が次または同じ一致する曜日で調整されます。
デフォルト実装はほとんどの暦体系に適切です。
ChronoField.ERAなしでChronoField.YEAR_OF_ERAが見つかった場合、Chronology.eras()の最後の紀元が使用されます。 実装では、7日の週、最初の「月の日」の値が1、最初の「年の日」の値が1、最初の月と年が必ず存在するものと想定します。- 定義:
- インタフェース
ChronologyのresolveDate - オーバーライド:
- クラス
AbstractChronologyのresolveDate - パラメータ:
fieldValues- フィールドと値のマップ、更新可能、null以外resolverStyle- 要求された解決のタイプ、null以外- 戻り値:
- 解決された日付、日付を作成するための情報が不十分な場合はnull
-
isIsoBased
public boolean isIsoBased()MinguoChronologyはISOベースのクロノロジで、DAY_OF_QUARTERやQUARTER_OF_YEARなどのIsoFieldsのフィールドをサポートします。- 定義:
- インタフェース
Chronology内のisIsoBased - 戻り値:
true- 導入されたバージョン:
- 19
- 関連項目:
-