モジュール java.base
パッケージ java.time.zone

クラスZoneOffsetTransitionRule

  • すべての実装されたインタフェース:
    Serializable

    public final class ZoneOffsetTransitionRule
    extends Object
    implements Serializable
    遷移の作成方法を表すルール。

    このクラスにより、将来の遷移を識別するルールを表現できます。 ルールは次のように多くの形式で記述できます。

    • 3月16日
    • 3月16日以後の日曜日
    • 3月16日以前の日曜日
    • 2月の最後の日曜日
    これらの異なるルール・タイプを表現したり問い合わせたりできます。

    実装要件:
    このクラスは不変でスレッドセーフです。
    導入されたバージョン:
    1.8
    関連項目:
    直列化された形式
    • メソッドの詳細

      • of

        public static ZoneOffsetTransitionRule of​(Month month,
                                                  int dayOfMonthIndicator,
                                                  DayOfWeek dayOfWeek,
                                                  LocalTime time,
                                                  boolean timeEndOfDay,
                                                  ZoneOffsetTransitionRule.TimeDefinition timeDefnition,
                                                  ZoneOffset standardOffset,
                                                  ZoneOffset offsetBefore,
                                                  ZoneOffset offsetAfter)
        2つのオフセット間の遷移を作成するための年間ルールを定義するインスタンスを取得します。

        アプリケーションは通常、ZoneRulesからインスタンスを取得するはずです。 このファクトリはZoneRules作成時にのみ使用されることを意図しています。

        パラメータ:
        month - カットオーバー週の初日の月日の月、nullでない
        dayOfMonthIndicator - カットオーバー週の月日の日、週がその日以後の場合は正、週がその日以前の場合は負、月末日からカウント、-28から31まで(0を除く)
        dayOfWeek - 必要な曜日、月日を変更するべきでない場合はnull
        time - '前'オフセットのカットオーバー時間、nullでない
        timeEndOfDay - 時間が一日の終わりの深夜零時かどうか
        timeDefnition - カットオーバーの解釈方法
        standardOffset - カットオーバー時に有効な標準オフセット、nullでない
        offsetBefore - カットオーバー前のオフセット、nullでない
        offsetAfter - カットオーバー後のオフセット、nullでない
        戻り値:
        ルール、nullでない
        例外:
        IllegalArgumentException - 月の日インジケータが無効な場合
        IllegalArgumentException - 時間が深夜でないときに一日の終わりフラグがtrueの場合
        IllegalArgumentException - time.getNano()がゼロ以外の値を返す場合
      • getMonth

        public Month getMonth()
        遷移の月を取得します。

        ルールが正確な日付を定義している場合、月はその日付の月です。

        遷移が発生する可能性がある週を定義している場合は、月はカットオーバーの最も早い可能な日付または最も遅い可能な日付の月です。

        戻り値:
        遷移の月、nullでない
      • getDayOfMonthIndicator

        public int getDayOfMonthIndicator()
        遷移の「月の日」のインジケータを取得します。

        ルールが正確な日付を定義している場合、日はその日付の月です。

        遷移が発生する可能性がある週を定義している場合は、日は遷移週の始まりまたは終わりを定義します。

        値が正の場合、通常の「月の日」を表し、遷移が可能な最も早い日付です。 日付が2月29日を指す場合があります(うるう年でない平年では3月1日として扱われる必要がある)。

        値が負の場合、月末日からさかのぼる日数を表します(-1は月末日)。 その場合、識別される日は遷移が可能な最も遅い日付です。

        戻り値:
        「月の日」インジケータ、-28から31まで(0を除く)
      • getDayOfWeek

        public DayOfWeek getDayOfWeek()
        遷移の曜日を取得します。

        ルールが正確な日付を定義している場合、nullを返します。

        カットオーバーが発生する可能性がある週を定義している場合は、このメソッドは月日が調整された後の曜日を返します。 日が正の場合、調整は後ろ方向です。 日が負の場合、調整は前方向です。

        戻り値:
        遷移が発生する曜日、ルールが正確な日付を定義している場合はnull
      • getLocalTime

        public LocalTime getLocalTime()
        isMidnightEndOfDay()でチェックする必要がある遷移の日のローカル・タイムを取得します。

        時間は時間定義を使用して時点に変換されます。

        戻り値:
        遷移の日のローカル時間、nullでない
      • isMidnightEndOfDay

        public boolean isMidnightEndOfDay()
        遷移のローカル時間が1日の終わりの深夜零時かどうか。

        遷移が24:00に発生するとして表現される場合があります。

        戻り値:
        深夜のローカル時間が日の始めまたは終わりかどうか
      • getTimeDefinition

        public ZoneOffsetTransitionRule.TimeDefinition getTimeDefinition()
        時間を時点に変換する方法を指定する、時間定義を取得します。

        ローカル時間は、標準オフセット、ウォール・オフセットまたはUTCを使用して時点に変換できます。

        戻り値:
        時間定義、nullでない
      • getStandardOffset

        public ZoneOffset getStandardOffset()
        遷移時に有効な標準オフセットを取得します。
        戻り値:
        標準オフセット、nullでない
      • getOffsetBefore

        public ZoneOffset getOffsetBefore()
        遷移前のオフセットを取得します。
        戻り値:
        前オフセット、nullでない
      • getOffsetAfter

        public ZoneOffset getOffsetAfter()
        遷移後のオフセットを取得します。
        戻り値:
        後ろオフセット、nullでない
      • createTransition

        public ZoneOffsetTransition createTransition​(int year)
        指定された年の遷移インスタンスを作成します。

        計算はISO-8601暦を使用して実行されます。

        パラメータ:
        year - 遷移の作成対象の年、nullでない
        戻り値:
        遷移インスタンス、nullでない
      • equals

        public boolean equals​(Object otherRule)
        このオブジェクトと他方のオブジェクトが等しいかどうかを確認します。

        オブジェクトの状態全体が比較されます。

        オーバーライド:
        equals 、クラス:  Object
        パラメータ:
        otherRule - 比較対象の他方のオブジェクト、nullはfalseを返す
        戻り値:
        等しい場合はtrue
        関連項目:
        Object.hashCode()HashMap
      • toString

        public String toString()
        このオブジェクトを説明する文字列を返します。
        オーバーライド:
        toString 、クラス:  Object
        戻り値:
        デバッグ用の文字列、nullでない