ChronoField.RangeRefinedBy(ITemporalAccessor) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
テンポラル オブジェクトを使用して結果を絞り込み、このフィールドの有効な値の範囲を取得します。
[Android.Runtime.Register("rangeRefinedBy", "(Ljava/time/temporal/TemporalAccessor;)Ljava/time/temporal/ValueRange;", "", ApiSince=26)]
public Java.Time.Temporal.ValueRange? RangeRefinedBy(Java.Time.Temporal.ITemporalAccessor? temporal);
[<Android.Runtime.Register("rangeRefinedBy", "(Ljava/time/temporal/TemporalAccessor;)Ljava/time/temporal/ValueRange;", "", ApiSince=26)>]
abstract member RangeRefinedBy : Java.Time.Temporal.ITemporalAccessor -> Java.Time.Temporal.ValueRange
override this.RangeRefinedBy : Java.Time.Temporal.ITemporalAccessor -> Java.Time.Temporal.ValueRange
パラメーター
- temporal
- ITemporalAccessor
結果を絞り込むために使用されるテンポラル オブジェクト (null ではない)
返品
null ではなく、このフィールドの有効な値の範囲
実装
- 属性
注釈
テンポラル オブジェクトを使用して結果を絞り込み、このフィールドの有効な値の範囲を取得します。 これにより、テンポラル オブジェクトを使用して、フィールドの有効な値の範囲が検索されます。 これは TemporalField.range() に似ていますが、このメソッドはテンポラルを使用して結果を調整します。 たとえば、フィールドがDAY_OF_MONTH場合、28 日、29 日、30 日、31 日の 4 つの月の長さがあるため、範囲メソッドは正確ではありません。 このメソッドを日付と共に使用すると、範囲を正確に指定でき、これら 4 つのオプションのうち 1 つだけが返されます。 このメソッドを使用する 2 つの同等の方法があります。 1 つ目は、このメソッドを直接呼び出す方法です。 2 つ目は、TemporalAccessor.range(TemporalField) を使用することです。
// these two lines are equivalent, but the second approach is recommended
temporal = thisField.rangeRefinedBy(temporal);
temporal = temporal.range(thisField);
2 番目のアプローチである range(TemporalField) を使用することをお勧めします。コードで読む方がわかりやすいためです。 実装では、ChronoField で使用できるフィールドを使用して、クエリまたは計算を実行する必要があります。 フィールドがサポートされていない場合は、UnsupportedTemporalTypeException をスローする必要があります。