- java.lang.Object
-
- java.time.temporal.ValueRange
-
- すべての実装されたインタフェース:
Serializable
public final class ValueRange extends Object implements Serializable
日付/時間フィールドの有効な値の範囲です。TemporalFieldのすべてのインスタンスには、有効な値の範囲があります。 たとえば、ISO暦の「月の日」は1から始まり、28と31の間のいずれかで終わります。 このクラスはその有効な範囲を保持します。このクラスの制限に注意することが重要です。 最大値と最小値だけが提供されます。 外側の範囲の中に無効な値が存在する可能性があります。 たとえば、ある特異なフィールドの有効値が1、2、4、6、7の場合、範囲は1から7までになりますが、値3および5は無効です。
このクラスのインスタンスは、特定のフィールドには関連付けられません。
- 実装要件:
- このクラスは不変でスレッドセーフです。
- 導入されたバージョン:
- 1.8
- 関連項目:
- 直列化された形式
-
-
メソッドのサマリー
すべてのメソッド staticメソッド インスタンス・メソッド 具象メソッド 修飾子と型 メソッド 説明 intcheckValidIntValue(long value, TemporalField field)指定された値が有効で、intに収まることを確認します。longcheckValidValue(long value, TemporalField field)指定された値が有効であることを確認します。booleanequals(Object obj)この範囲がもう一方の範囲と等しいかどうかを確認します。longgetLargestMinimum()フィールドが取り得る最大の最小値を取得します。longgetMaximum()フィールドが取り得る最大値を取得します。longgetMinimum()フィールドが取り得る最小値を取得します。longgetSmallestMaximum()フィールドが取り得る最小の最大値を取得します。inthashCode()この範囲のハッシュ・コード。booleanisFixed()値の範囲が固定で完全に既知かどうか。booleanisIntValue()範囲内のすべての値がintに収まるかどうかを確認します。booleanisValidIntValue(long value)値が有効な範囲内にあり、範囲内のすべての値がintに収まることを確認します。booleanisValidValue(long value)値が有効な範囲内にあるかどうかを確認します。static ValueRangeof(long min, long max)固定の値範囲を取得します。static ValueRangeof(long min, long maxSmallest, long maxLargest)可変の値範囲を取得します。static ValueRangeof(long minSmallest, long minLargest, long maxSmallest, long maxLargest)完全に可変の値範囲を取得します。StringtoString()この範囲をStringとして出力します。
-
-
-
メソッドの詳細
-
of
public static ValueRange of(long min, long max)
固定の値範囲を取得します。このファクトリは、最小値と最大値が固定の範囲を取得します。 たとえば、ISO暦の月の範囲は常に1から12までです。
- パラメータ:
min- 最小値max- 最大値- 戻り値:
- 最小値、最大値に対応するValueRange。null以外
- 例外:
IllegalArgumentException- 最小値が最大値より大きい場合
-
of
public static ValueRange of(long min, long maxSmallest, long maxLargest)
可変の値範囲を取得します。このファクトリは、最小値が固定で最大値が可変の範囲を取得します。 たとえば、ISO暦の「月の日」は常に1から始まりますが、28と31の間で終わります。
- パラメータ:
min- 最小値maxSmallest- 最小の最大値maxLargest- 最大の最大値- 戻り値:
- 最小値、最小の最大値、最大の最大値に対応するValueRange。null以外
- 例外:
IllegalArgumentException- 最小値が最小の最大値より大きいか、最小の最大値が最大の最大値より大きい場合
-
of
public static ValueRange of(long minSmallest, long minLargest, long maxSmallest, long maxLargest)
完全に可変の値範囲を取得します。このファクトリは、最小値と最大値の両方が可変の範囲を取得します。
- パラメータ:
minSmallest- 最小の最小値minLargest- 最大の最小値maxSmallest- 最小の最大値maxLargest- 最大の最大値- 戻り値:
- 最小の最小値、最大の最小値、最小の最大値、最大の最大値に対応するValueRange。null以外
- 例外:
IllegalArgumentException- 最小の最小値が最小の最大値より大きいか、最小の最大値が最大の最大値より大きいか、最大の最小値が最大の最大値より大きい場合
-
isFixed
public boolean isFixed()
値の範囲が固定で完全に既知かどうか。たとえば、ISO暦の「月の日」は1から始まり、28と31の間で終わります。 最大値が不明確なので、範囲は固定ではありません。 ただし、1月の場合、範囲は常に1から31までなので、範囲は固定です。
- 戻り値:
- 値のセットが固定の場合はtrue
-
getMinimum
public long getMinimum()
フィールドが取り得る最小値を取得します。たとえば、ISO暦の「月の日」は常に1から始まります。 したがって、最小値は1です。
- 戻り値:
- このフィールドの最小値
-
getLargestMinimum
public long getLargestMinimum()
フィールドが取り得る最大の最小値を取得します。たとえば、ISO暦の「月の日」は常に1から始まります。 したがって、最大の最小値は1です。
- 戻り値:
- このフィールドが取り得る最大の最小値
-
getSmallestMaximum
public long getSmallestMaximum()
フィールドが取り得る最小の最大値を取得します。たとえば、ISO暦の「月の日」は28と31の間で終わります。 したがって、最小の最大値は28です。
- 戻り値:
- このフィールドが取り得る最小の最大値
-
getMaximum
public long getMaximum()
フィールドが取り得る最大値を取得します。たとえば、ISO暦の「月の日」は28と31の間で終わります。 したがって、最大値は31です。
- 戻り値:
- このフィールドの最大値
-
isIntValue
public boolean isIntValue()
範囲内のすべての値がintに収まるかどうかを確認します。すべての有効値が
intの境界に収まるかどうかを確認します。たとえば、ISO暦の月の値は1から12までで、これは
intに収まります。 これに対し、ISO暦の「1日のうちのナノ秒」は1から86,400,000,000,000までで、これはintに収まりません。この実装は、
getMinimum()とgetMaximum()を使用します。- 戻り値:
- 有効な値が常に
intに収まる場合はtrue
-
isValidValue
public boolean isValidValue(long value)
値が有効な範囲内にあるかどうかを確認します。値が保存された値の範囲内にあるかどうかを確認します。
- パラメータ:
value- チェックする値- 戻り値:
- 値が有効な場合はtrue
-
isValidIntValue
public boolean isValidIntValue(long value)
値が有効な範囲内にあり、範囲内のすべての値がintに収まることを確認します。このメソッドは
isIntValue()とisValidValue(long)を組み合せます。- パラメータ:
value- チェックする値- 戻り値:
- 値が有効で
intに収まる場合はtrue
-
checkValidValue
public long checkValidValue(long value, TemporalField field)指定された値が有効であることを確認します。値が有効な範囲内にあることを検証します。 このフィールドはエラー・メッセージを向上させるためだけに使用されます。
- パラメータ:
value- チェックする値field- チェック対象のフィールド。nullの場合もあり- 戻り値:
- 渡された値
- 関連項目:
isValidValue(long)
-
checkValidIntValue
public int checkValidIntValue(long value, TemporalField field)指定された値が有効で、intに収まることを確認します。値が有効な範囲内にあり、すべての有効値が
intの境界に収まることを検証します。 このフィールドはエラー・メッセージを向上させるためだけに使用されます。- パラメータ:
value- チェックする値field- チェック対象のフィールド。nullの場合もあり- 戻り値:
- 渡された値
- 関連項目:
isValidIntValue(long)
-
equals
public boolean equals(Object obj)
この範囲がもう一方の範囲と等しいかどうかを確認します。比較は4つの値(最小値、最大の最小値、最小の最大値、最大値)に基づいて行われます。
ValueRange型のオブジェクトのみが比較され、それ以外の型ではfalseが返されます。- オーバーライド:
equals、クラス:Object- パラメータ:
obj- チェックするオブジェクト、nullはfalseを返す- 戻り値:
- これがもう一方の範囲と等しい場合はtrue
- 関連項目:
Object.hashCode()、HashMap
-
hashCode
public int hashCode()
この範囲のハッシュ・コード。- オーバーライド:
hashCode、クラス:Object- 戻り値:
- 適切なハッシュ・コード
- 関連項目:
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
-
-