- すべての実装されたインタフェース:
Serializable
,Comparable<ZoneOffsetTransition>
2つのオフセット間の遷移は通常、サマー・タイム・カットオーバーの結果です。 不連続は通常、春ではギャップ、秋では重複です。 ZoneOffsetTransition
は2つのオフセット間の遷移をモデル化します。
ギャップは、単純に存在していないローカル日付/時間があるときに発生します。 たとえば、オフセットが+03:00
から+04:00
に変化した場合です。 これは、'今夜の午前1時に時計が1時間進む'と説明できます。
重複は、2回存在するローカル日付/時間がある場合に発生します。 たとえば、オフセットが+04:00
から+03:00
に変化した場合です。 これは、'今夜の午前2時に時計が1時間戻る'と説明できます。
- 実装要件:
- このクラスは不変でスレッドセーフです。
- 導入されたバージョン:
- 1.8
- 関連項目:
-
メソッドのサマリー
修飾子と型メソッド説明int
compareTo
(ZoneOffsetTransition transition) 遷移時点に基づいてこの遷移を他方の遷移を比較します。boolean
このオブジェクトと他方のオブジェクトが等しいかどうかを確認します。後オフセットで表現されるような、ローカル遷移日付/時間を取得します。前オフセットで表現されるような、ローカル遷移日付/時間を取得します。遷移のデュレーションを取得します。遷移インスタントを取得します。遷移後のオフセットを取得します。遷移前のオフセットを取得します。int
hashCode()
適切なハッシュ・コードを返します。boolean
isGap()
この遷移がローカル時系列でギャップを表しているか。boolean
この遷移がローカル時系列で重複を表しているか。boolean
isValidOffset
(ZoneOffset offset) 指定されたオフセットがこの遷移中に有効であるかどうかを確認します。static ZoneOffsetTransition
of
(LocalDateTime transition, ZoneOffset offsetBefore, ZoneOffset offsetAfter) 2つのオフセット間の遷移を定義するインスタンスを取得します。long
遷移時点をepoch秒として取得します。toString()
このオブジェクトを説明する文字列を返します。
-
メソッドの詳細
-
of
public static ZoneOffsetTransition of(LocalDateTime transition, ZoneOffset offsetBefore, ZoneOffset offsetAfter) 2つのオフセット間の遷移を定義するインスタンスを取得します。アプリケーションは通常、
ZoneRules
からインスタンスを取得するはずです。 このファクトリはZoneRules
作成時にのみ使用されることを意図しています。- パラメータ:
transition
- 遷移時の遷移日付/時間、実際に発生しない、前オフセットにローカルに表現される、nullでないoffsetBefore
- 遷移前のオフセット、nullでないoffsetAfter
- 遷移時以後のオフセット、nullでない- 戻り値:
- 遷移、nullでない
- 例外:
IllegalArgumentException
-offsetBefore
とoffsetAfter
が等しい、またはtransition.getNano()
がゼロ以外の値を返す場合
-
getInstant
public Instant getInstant()遷移インスタントを取得します。これは不連続の時点です('後'オフセットが適用される最初の時点として定義される)。
メソッド
getInstant()
、getDateTimeBefore()
およびgetDateTimeAfter()
はすべて、同じインスタントを表します。- 戻り値:
- 遷移時点、nullでない
-
toEpochSecond
public long toEpochSecond()遷移時点をepoch秒として取得します。- 戻り値:
- 遷移epoch秒
-
getDateTimeBefore
public LocalDateTime getDateTimeBefore()前オフセットで表現されるような、ローカル遷移日付/時間を取得します。これは、'前'オフセットで表現される不連続が始まる日付/時間です。 この時点では、'後'オフセットが実際に使用されるため、この日付/時間と'前'オフセットの組み合わせは発生しません。
'前'日付/時間とオフセットの組み合わせは、同じ時点を'後'日付/時間およびオフセットとして表現します。
- 戻り値:
- 前オフセットで表現される遷移日付/時間、nullでない
-
getDateTimeAfter
public LocalDateTime getDateTimeAfter()後オフセットで表現されるような、ローカル遷移日付/時間を取得します。これは、不連続後の最初の日付/時間(新しいオフセットが適用されるとき)です。
'前'日付/時間とオフセットの組み合わせは、同じ時点を'後'日付/時間およびオフセットとして表現します。
- 戻り値:
- 後オフセットで表現される遷移日付/時間、nullでない
-
getOffsetBefore
public ZoneOffset getOffsetBefore()遷移前のオフセットを取得します。これは、遷移の時点の前に使用されているオフセットです。
- 戻り値:
- 遷移前のオフセット、nullでない
-
getOffsetAfter
public ZoneOffset getOffsetAfter()遷移後のオフセットを取得します。これは、遷移時以後に使用されているオフセットです。
- 戻り値:
- 遷移後のオフセット、nullでない
-
getDuration
public Duration getDuration()遷移のデュレーションを取得します。ほとんどの場合、遷移デュレーションは1時間ですが、常にそうではありません。 デュレーションは、ギャップの場合は正、重複の場合は負です。 タイムゾーンは秒ベースであるため、デュレーションのナノ秒部分はゼロになります。
- 戻り値:
- 遷移のデュレーション、ギャップの場合は正、重複の場合は負
-
isGap
public boolean isGap()この遷移がローカル時系列でギャップを表しているか。ギャップは、単純に存在していないローカル日付/時間があるときに発生します。 たとえば、オフセットが
+01:00
から+02:00
に変化した場合です。 これは、'今夜の午前1時に時計が1時間進む'と説明できます。- 戻り値:
- この遷移がギャップの場合はtrue、重複の場合はfalse
-
isOverlap
public boolean isOverlap()この遷移がローカル時系列で重複を表しているか。重複は、2回存在するローカル日付/時間がある場合に発生します。 たとえば、オフセットが
+02:00
から+01:00
に変化した場合です。 これは、'今夜の午前2時に時計が1時間戻る'と説明できます。- 戻り値:
- この遷移が重複の場合はtrueで、ギャップの場合はfalse
-
isValidOffset
public boolean isValidOffset(ZoneOffset offset) 指定されたオフセットがこの遷移中に有効であるかどうかを確認します。これは、指定されたオフセットが遷移のあるポイントで有効になるかどうかを確認します。 ギャップは常にfalseを返します。 前または後オフセットの場合、重複はtrueを返します。
- パラメータ:
offset
- チェック対象のオフセット、nullはfalseを返す- 戻り値:
- 遷移中にオフセットが有効な場合はtrue
-
compareTo
public int compareTo(ZoneOffsetTransition transition) 遷移時点に基づいてこの遷移を他方の遷移を比較します。これは、各遷移の時点を比較します。 オフセットは無視され、この順序はequalsと一貫性がなくなります。
- 定義:
compareTo
、インタフェースComparable<ZoneOffsetTransition>
- パラメータ:
transition
- 比較対象の遷移、nullでない- 戻り値:
- コンパレータ値、小さい場合は負、大きい場合は正
-
equals
public boolean equals(Object other) このオブジェクトと他方のオブジェクトが等しいかどうかを確認します。オブジェクトの状態全体が比較されます。
-
hashCode
public int hashCode()適切なハッシュ・コードを返します。 -
toString
public String toString()このオブジェクトを説明する文字列を返します。
-