- すべての実装されたインタフェース:
- Serializable,- Comparable<ZoneOffset>,- TemporalAccessor,- TemporalAdjuster
public final class ZoneOffset extends ZoneId implements TemporalAccessor, TemporalAdjuster, Comparable<ZoneOffset>, Serializable
+02:00など)。
 タイムゾーン・オフセットは、タイムゾーンがグリニッジ/UTCと異なる期間です。 これは通常、時と分からなる固定の数値です。
 タイムゾーン・オフセットは世界の地域ごとに異なります。 場所や時期によってオフセットがどう変わるかについてのルールは、ZoneIdクラスで返されます。 
 
 たとえば、パリは、冬にはグリニッジ/UTCから1時間進み、夏には2時間進みます。 パリのZoneIdインスタンスは2つのZoneOffsetインスタンス(冬は+01:00インスタンス、夏は+02:00インスタンス)を参照します。 
 
2008年に、世界中のタイムゾーン・オフセットが-12:00から+14:00までに拡張されました。 範囲が拡張されることに関する問題を回避し、さらに検証を提供するために、オフセットの範囲は-18:00から18:00までに制限されています。
このクラスはISO暦体系で使用するように設計されています。 時間、分および秒のフィールドは、それらの標準ISO定義に対して有効であることを前提としています。 このクラスは、時間フィールドの定義がISO暦体系のものと一致する場合には、他の暦体系で使用できます。
 ZoneOffsetのインスタンスは、equals(java.lang.Object)を使用して比較される必要があります。 実装は一部の共通オフセットをキャッシュすることを選択できますが、アプリケーションはそのようなキャッシュに依存してはいけません。 
 
 これは値ベースのクラスなので、ID依存操作(参照等価性(==)、IDハッシュ・コード、同期など)をZoneOffsetのインスタンスで使用することは、予期できない結果になる可能性があり、避けてください。 比較する場合は、equalsメソッドを使用することをお薦めします。 
- 実装要件:
- このクラスは不変でスレッドセーフです。
- 導入されたバージョン:
- 1.8
- 関連項目:
- 直列化された形式
- 
フィールドのサマリーフィールド 修飾子と型 フィールド 説明 static ZoneOffsetMAXサポートされる最大オフセットの定数です。static ZoneOffsetMINサポートされる最小のオフセットの定数。static ZoneOffsetUTCUTC用のタイムゾーン・オフセット(IDがZ)。
- 
メソッドのサマリー修飾子と型 メソッド 説明 TemporaladjustInto(Temporal temporal)指定された時間的オブジェクトをこのオブジェクトと同じオフセットになるように調整します。intcompareTo(ZoneOffset other)このオフセットを別のオフセットと降順で比較します。booleanequals(Object obj)このオフセットが別のオフセットと等しいかどうかをチェックします。static ZoneOffsetfrom(TemporalAccessor temporal)時間的オブジェクトからZoneOffsetのインスタンスを取得します。intget(TemporalField field)このオフセットから指定されたフィールドの値をintとして取得します。StringgetId()正規化されたゾーン・オフセットIDを取得します。longgetLong(TemporalField field)このオフセットから指定されたフィールドの値をlongとして取得します。ZoneRulesgetRules()関連付けられたタイムゾーン・ルールを取得します。intgetTotalSeconds()合計ゾーン・オフセットを秒で取得します。inthashCode()このオフセットのハッシュ・コード。booleanisSupported(TemporalField field)指定されたフィールドがサポートされているかどうかをチェックします。static ZoneOffsetof(String offsetId)IDを使用してZoneOffsetのインスタンスを取得します。static ZoneOffsetofHours(int hours)オフセット(時)を使用してZoneOffsetのインスタンスを取得します。static ZoneOffsetofHoursMinutes(int hours, int minutes)オフセット(時と分)を使用してZoneOffsetのインスタンスを取得します。static ZoneOffsetofHoursMinutesSeconds(int hours, int minutes, int seconds)オフセット(時、分および秒)を使用してZoneOffsetのインスタンスを取得します。static ZoneOffsetofTotalSeconds(int totalSeconds)合計オフセット(秒)を指定してZoneOffsetのインスタンスを取得します。<R> Rquery(TemporalQuery<R> query)指定された問合せを使用してこのオフセットを問い合わせます。ValueRangerange(TemporalField field)指定されたフィールドの有効な値の範囲を取得します。StringtoString()正規化IDを使用して、このオフセットをStringとして出力します。クラス java.time.ZoneIdで宣言されたメソッドgetAvailableZoneIds、getDisplayName、normalized、of、ofOffset、systemDefault
- 
フィールド詳細- 
UTCpublic static final ZoneOffset UTCUTC用のタイムゾーン・オフセット(IDがZ)。
- 
MINpublic static final ZoneOffset MINサポートされる最小のオフセットの定数。
- 
MAXpublic static final ZoneOffset MAXサポートされる最大オフセットの定数です。
 
- 
- 
メソッドの詳細- 
ofpublic static ZoneOffset of(String offsetId)IDを使用してZoneOffsetのインスタンスを取得します。このメソッドは ZoneOffsetの文字列IDを解析してインスタンスを返します。 解析は、getId()によって生成されるすべてのフォーマットと、いくつかの追加フォーマットを受け入れます。- Z- UTC用
- +h
- +hh
- +hh:mm
- -hh:mm
- +hhmm
- -hhmm
- +hh:mm:ss
- -hh:mm:ss
- +hhmmss
- -hhmmss
 返されるオフセットのIDは、 getId()によって記述されるフォーマットのいずれかに正規化されます。サポートされる最大範囲は+18:00から-18:00(これを含む)です。 - パラメータ:
- offsetId- オフセットID、nullでない
- 戻り値:
- ゾーン・オフセット、nullでない
- 例外:
- DateTimeException- オフセットが無効な場合。
 
- 
ofHourspublic static ZoneOffset ofHours(int hours)オフセット(時)を使用してZoneOffsetのインスタンスを取得します。- パラメータ:
- hours- タイムゾーン・オフセット(時)、-18から+18
- 戻り値:
- ゾーン・オフセット、nullでない
- 例外:
- DateTimeException- オフセットが要求範囲にない場合
 
- 
ofHoursMinutespublic static ZoneOffset ofHoursMinutes(int hours, int minutes)オフセット(時と分)を使用してZoneOffsetのインスタンスを取得します。時間および分コンポーネントの記号は一致する必要があります。 つまり、時が負の場合は、分は負またはゼロである必要があります。 時がゼロの場合は、分は正、負またはゼロが許可されます。 - パラメータ:
- hours- タイムゾーン・オフセット(時)、-18から+18
- minutes- タイムゾーン・オフセット(分)、-0から±59、記号は時と一致
- 戻り値:
- ゾーン・オフセット、nullでない
- 例外:
- DateTimeException- オフセットが要求範囲にない場合
 
- 
ofHoursMinutesSecondspublic static ZoneOffset ofHoursMinutesSeconds(int hours, int minutes, int seconds)オフセット(時、分および秒)を使用してZoneOffsetのインスタンスを取得します。時、分および秒コンポーネントの記号は一致する必要があります。 つまり、時が負である場合、分と秒は負またはゼロである必要があります。 - パラメータ:
- hours- タイムゾーン・オフセット(時)、-18から+18
- minutes- タイムゾーン・オフセット(分)、-0から±59、記号は時および秒と一致
- seconds- タイムゾーン・オフセット(秒)、-0から±59、記号は時および分と一致
- 戻り値:
- ゾーン・オフセット、nullでない
- 例外:
- DateTimeException- オフセットが要求範囲にない場合
 
- 
frompublic static ZoneOffset from(TemporalAccessor temporal)時間的オブジェクトからZoneOffsetのインスタンスを取得します。これは、指定された時間的オブジェクトに基づくオフセットを取得します。 TemporalAccessorは日付および時間情報の任意セットを表し、それをこのファクトリがZoneOffsetのインスタンスに変換します。TemporalAccessorは日付および時間情報のなんらかの形式を表します。 このファクトリは、任意の時間的オブジェクトをZoneOffsetのインスタンスに変換します。変換は、 OFFSET_SECONDSフィールドを抽出することに依存する、TemporalQueries.offset()問合せを使用します。このメソッドは関数型インタフェース TemporalQueryのシグネチャに一致するため、メソッド参照ZoneOffset::fromを介して、問合せとして使用できます。- パラメータ:
- temporal- 変換する一時オブジェクト、null以外
- 戻り値:
- ゾーン・オフセット、nullでない
- 例外:
- DateTimeException-- ZoneOffsetに変換できない場合
 
- 
ofTotalSecondspublic static ZoneOffset ofTotalSeconds(int totalSeconds)合計オフセット(秒)を指定してZoneOffsetのインスタンスを取得します。オフセットは、 -18:00から+18:00の範囲(-64800から+64800に対応)内である必要があります。- パラメータ:
- totalSeconds- 合計タイムゾーン・オフセット(秒)、-64800から+64800
- 戻り値:
- ZoneOffset、nullでない
- 例外:
- DateTimeException- オフセットが要求範囲にない場合
 
- 
getTotalSecondspublic int getTotalSeconds()合計ゾーン・オフセットを秒で取得します。これは、オフセット量にアクセスするための主要な方法です。 時、分および秒の各フィールドの合計を、時間に追加できる単一オフセットとして返します。 - 戻り値:
- 合計ゾーン・オフセット量(秒)
 
- 
getIdpublic String getId()正規化されたゾーン・オフセットIDを取得します。IDは、オフセット用の標準ISO-8601書式文字列とわずかに異なります。 3つのフォーマットがあります。 - Z- UTC用(ISO-8601)
- +hh:mmまたは- -hh:mm- 秒がゼロの場合(ISO-8601)
- +hh:mm:ssまたは- -hh:mm:ss- 秒がゼロでない場合(非ISO-8601)
 
- 
getRulespublic ZoneRules getRules()関連付けられたタイムゾーン・ルールを取得します。ルールは常に、照会時にこのオフセットを返します。 実装クラスは不変、スレッドセーフ、直列化可能です。 
- 
isSupportedpublic boolean isSupported(TemporalField field)指定されたフィールドがサポートされているかどうかをチェックします。これは、指定されたフィールドについてこのオフセットを照会できるかどうかをチェックします。 falseの場合、 rangeメソッドとgetメソッドを呼び出すと例外がスローされます。フィールドが ChronoFieldの場合、ここに問合せを実装します。OFFSET_SECONDSフィールドはtrueを返します。 他のすべてのChronoFieldインスタンスはfalseを返します。フィールドが ChronoFieldでない場合、このメソッドの結果は、thisを引数として渡してTemporalField.isSupportedBy(TemporalAccessor)を呼び出すことによって取得します。 フィールドがサポートされているかどうかはフィールドによって決定します。- 定義:
- インタフェースTemporalAccessorのisSupported
- パラメータ:
- field- チェックするフィールド、nullはfalseを返す
- 戻り値:
- フィールドがこのオフセットでサポートされている場合はtrue、そうでない場合はfalse
 
- 
rangepublic ValueRange range(TemporalField field)指定されたフィールドの有効な値の範囲を取得します。範囲オブジェクトはフィールドの有効な最小値と最大値を表します。 このオフセットは、返される範囲の精度を上げるために使用されます。 範囲を返せない場合は、フィールドがサポートされていないか他のなんらかの理由で、例外がスローされます。 フィールドが ChronoFieldの場合、ここに問合せを実装します。サポートされるフィールドは適切な範囲のインスタンスを返します。 他のすべてのChronoFieldインスタンスはUnsupportedTemporalTypeExceptionをスローします。フィールドが ChronoFieldではない場合、このメソッドの結果は、引数としてthisを渡してTemporalField.rangeRefinedBy(TemporalAccessor)を呼び出すことにより取得されます。 範囲を取得できるかどうかはフィールドによって決まります。- 定義:
- インタフェースTemporalAccessorのrange
- パラメータ:
- field- 範囲を問い合わせるフィールド、null以外
- 戻り値:
- フィールドの有効値の範囲。null以外
- 例外:
- DateTimeException- フィールドの範囲を取得できない場合
- UnsupportedTemporalTypeException- フィールドがサポートされていない場合
 
- 
getpublic int get(TemporalField field)このオフセットから指定されたフィールドの値をintとして取得します。これは、指定されたフィールドの値についてこのオフセットに問い合せます。 返される値は常にフィールドの値の有効な範囲内になります。 値を返せない場合は、フィールドがサポートされていないか他のなんらかの理由で、例外がスローされます。 フィールドが ChronoFieldの場合、ここに問合せを実装します。OFFSET_SECONDSフィールドはオフセットの値を返します。 他のすべてのChronoFieldインスタンスはUnsupportedTemporalTypeExceptionをスローします。フィールドが ChronoFieldではない場合、このメソッドの結果は、引数としてthisを渡してTemporalField.getFrom(TemporalAccessor)を呼び出すことにより取得されます。 値を取得できるかどうか、および値が何を表すかは、フィールドによって決まります。- 定義:
- インタフェースTemporalAccessorのget
- パラメータ:
- field- 取得するフィールド、null以外
- 戻り値:
- フィールドの値
- 例外:
- DateTimeException- フィールドの値を取得できない場合、または値がフィールドの有効な値の範囲外の場合
- UnsupportedTemporalTypeException- フィールドがサポートされていない場合、または値の範囲が- intを超えている場合
- ArithmeticException- 数値のオーバーフローが発生した場合
 
- 
getLongpublic long getLong(TemporalField field)このオフセットから指定されたフィールドの値をlongとして取得します。これは、指定されたフィールドの値についてこのオフセットに問い合せます。 値を返せない場合は、フィールドがサポートされていないか他のなんらかの理由で、例外がスローされます。 フィールドが ChronoFieldの場合、ここに問合せを実装します。OFFSET_SECONDSフィールドはオフセットの値を返します。 他のすべてのChronoFieldインスタンスはUnsupportedTemporalTypeExceptionをスローします。フィールドが ChronoFieldではない場合、このメソッドの結果は、引数としてthisを渡してTemporalField.getFrom(TemporalAccessor)を呼び出すことにより取得されます。 値を取得できるかどうか、および値が何を表すかは、フィールドによって決まります。- 定義:
- インタフェースTemporalAccessorのgetLong
- パラメータ:
- field- 取得するフィールド、null以外
- 戻り値:
- フィールドの値
- 例外:
- DateTimeException- フィールドの値を取得できない場合
- UnsupportedTemporalTypeException- フィールドがサポートされていない場合
- ArithmeticException- 数値のオーバーフローが発生した場合
 
- 
querypublic <R> R query(TemporalQuery<R> query)指定された問合せを使用してこのオフセットを問い合わせます。これは、指定された問合せ戦略オブジェクトを使用して、このオフセットを照会します。 TemporalQueryオブジェクトは結果を取得するために使用するロジックを定義します。 このメソッドの結果を理解するには、問合せのドキュメントをお読みください。このメソッドの結果は、 thisを引数として渡して、指定した問合せでTemporalQuery.queryFrom(TemporalAccessor)メソッドを呼び出すことによって取得します。- 定義:
- インタフェースTemporalAccessorのquery
- 型パラメータ:
- R- 結果の型
- パラメータ:
- query- 呼び出す問合せ、null以外
- 戻り値:
- 問合せ結果、nullが返されることがある(問合せによって定義される)
- 例外:
- DateTimeException- 問い合わせできない場合(問合せによって定義される)
- ArithmeticException- 数値のオーバーフローが発生した場合(問合せによって定義される)
 
- 
adjustInto指定された時間的オブジェクトをこのオブジェクトと同じオフセットになるように調整します。これは、オフセットがこれと同じに変更された状態で、入力と同じ観察可能型の時間的オブジェクトを返します。 調整は、 ChronoField.OFFSET_SECONDSをフィールドとして渡してTemporal.with(TemporalField, long)を使用することと同等です。ほとんどのケースで、 Temporal.with(TemporalAdjuster)を使用して、呼び出しパターンを逆にすると明確になります。// these two lines are equivalent, but the second approach is recommended temporal = thisOffset.adjustInto(temporal); temporal = temporal.with(thisOffset); このインスタンスは不変で、このメソッド呼び出しによって影響を受けません。 - 定義:
- インタフェースTemporalAdjusterのadjustInto
- パラメータ:
- temporal- 調整するターゲット・オブジェクト、null以外
- 戻り値:
- 調整されるオブジェクト、null以外
- 例外:
- DateTimeException- 調整を実行できない場合
- ArithmeticException- 数値のオーバーフローが発生した場合
 
- 
compareTopublic int compareTo(ZoneOffset other)このオフセットを別のオフセットと降順で比較します。オフセットは、世界中の同じ時間に出現する順序で比較されます。 つまり、 +10:00のオフセットは、-18:00のオフセットの前に出現します(これが+09:00まで続きます)。Comparableで定義されているように、比較はequalsと一致します。- 定義:
- compareTo、インタフェース- Comparable<ZoneOffset>
- パラメータ:
- other- 比較する他方の日付、null以外
- 戻り値:
- コンパレータ値、小さい場合は負、大きい場合は正
- 例外:
- NullPointerException-- otherがnullである場合
 
- 
equalspublic boolean equals(Object obj)このオフセットが別のオフセットと等しいかどうかをチェックします。比較はオフセット量(秒)ベースです。 これはIDによる比較と同等です。 - オーバーライド:
- equals、クラス:- ZoneId
- パラメータ:
- obj- チェックするオブジェクト、nullはfalseを返す
- 戻り値:
- これが他方のオフセットと等しい場合はtrue
- 関連項目:
- Object.hashCode()、- HashMap
 
- 
hashCodepublic int hashCode()このオフセットのハッシュ・コード。- オーバーライド:
- hashCode、クラス:- ZoneId
- 戻り値:
- 適切なハッシュ・コード
- 関連項目:
- Object.equals(java.lang.Object),- System.identityHashCode(java.lang.Object)
 
- 
toStringpublic String toString()正規化IDを使用して、このオフセットをStringとして出力します。
 
-