Language

ZonedDateTime.With メソッド

定義

オーバーロード

名前 説明
With(ITemporalField, Int64)

指定したフィールドを新しい値に設定して、この日時のコピーを返します。

With(ITemporalAdjuster)

この日時の調整されたコピーを返します。

With(ITemporalField, Int64)

指定したフィールドを新しい値に設定して、この日時のコピーを返します。

[Android.Runtime.Register("with", "(Ljava/time/temporal/TemporalField;J)Ljava/time/ZonedDateTime;", "", ApiSince=26)]
public Java.Time.Temporal.ITemporal? With(Java.Time.Temporal.ITemporalField? field, long newValue);
[<Android.Runtime.Register("with", "(Ljava/time/temporal/TemporalField;J)Ljava/time/ZonedDateTime;", "", ApiSince=26)>]
abstract member With : Java.Time.Temporal.ITemporalField * int64 -> Java.Time.Temporal.ITemporal
override this.With : Java.Time.Temporal.ITemporalField * int64 -> Java.Time.Temporal.ITemporal

パラメーター

field
ITemporalField

null ではなく、結果で設定するフィールド

newValue
Int64

結果のフィールドの新しい値

返品

指定されたフィールドが null ではなく設定された、これに基づく ZonedDateTime

属性

注釈

指定したフィールドを新しい値に設定して、この日時のコピーを返します。 これにより、指定したフィールドの値が変更された ZonedDateTime が返されます。 これは、年、月、または月の日など、サポートされている任意のフィールドを変更するために使用できます。 フィールドがサポートされていないか、何らかの理由で値を設定できない場合は、例外がスローされます。 場合によっては、指定したフィールドを変更すると、結果の日時が無効になる場合があります。たとえば、月を 1 月 31 日から 2 月に変更すると、月の日が無効になる場合があります。 このような場合、フィールドは日付の解決を担当します。 通常は、前の有効な日付を選択します。この例では、2 月の最後の有効な日になります。 フィールドが ChronoField の場合、ここで調整が実装されます。 INSTANT_SECONDS フィールドは、指定したインスタントの日時を返します。 ゾーンとナノオブ秒は変更されません。 結果には、新しいインスタント ゾーンと元のゾーンから派生したオフセットが表示されます。 新しいインスタント値が有効な範囲外の場合は、DateTimeException がスローされます。 通常、OFFSET_SECONDS フィールドは無視されます。 ZonedDateTime のオフセットは、主にタイム ゾーンによって制御されます。 そのため、ローカルの日時とゾーンに対して有効なオフセットが 1 つしかないため、オフセットを変更しても通常は意味がありません。 ゾーン化された日時が夏時間の重複している場合、オフセットは 2 つの有効なオフセットを切り替えるために使用されます。 それ以外の場合は、オフセットは無視されます。 新しいオフセット値が有効な範囲外の場合は、DateTimeException がスローされます。 サポートされている他のフィールドは、LocalDateTime の一致するメソッドに従って動作します。 ゾーンは計算の一部ではなく、変更されません。 ZonedDateTime に変換するときに、ローカルの日時が重複している場合は、可能であればオフセットが保持され、それ以外の場合は以前のオフセットが使用されます。 ギャップ内にある場合、ローカル日時はギャップの長さによって前方に調整されます。 他のすべての ChronoField インスタンスは、UnsupportedTemporalTypeException をスローします。 フィールドが ChronoField でない場合、このメソッドの結果は、TemporalField.adjustInto(Temporal, long) を引数として渡すことによって取得されます。 この場合、フィールドはインスタントを調整するかどうかと調整する方法を決定します。 このインスタンスは不変であり、このメソッド呼び出しの影響を受けません。

Javaリファレンス。

適用対象

With(ITemporalAdjuster)

この日時の調整されたコピーを返します。

[Android.Runtime.Register("with", "(Ljava/time/temporal/TemporalAdjuster;)Ljava/time/ZonedDateTime;", "", ApiSince=26)]
public Java.Time.ZonedDateTime? With(Java.Time.Temporal.ITemporalAdjuster? adjuster);
[<Android.Runtime.Register("with", "(Ljava/time/temporal/TemporalAdjuster;)Ljava/time/ZonedDateTime;", "", ApiSince=26)>]
member this.With : Java.Time.Temporal.ITemporalAdjuster -> Java.Time.ZonedDateTime

パラメーター

adjuster
ITemporalAdjuster

使用するアジャスターは null ではなく

返品

これに基づく ZonedDateTime と調整が行われ、null ではない

属性

注釈

この日時の調整されたコピーを返します。 これにより、日付/時刻が調整された ZonedDateTime が返されます。 調整は、指定されたアジャスター戦略オブジェクトを使用して行われます。 アジャスターのドキュメントを読んで、どのような調整が行われるかを理解してください。 単純なアジャスターでは、年フィールドなどのフィールドの 1 つを単に設定できます。 より複雑な調整ツールでは、日付を月の最後の日に設定できます。 一般的な調整の選択は、TemporalAdjusters で提供されます。 これには、"月の最後の日" と "次の水曜日" の検索が含まれます。 主要な日時クラスでは、Month や MonthDay などの TemporalAdjuster インターフェイスも実装されます。 アジャスターは、月の長さや閏年などの特殊なケースを処理します。 たとえば、このコードは 7 月の最終日に日付を返します。LocalDate クラスと LocalTime クラスは TemporalAdjuster を実装するため、このメソッドを使用して日付、時刻、またはオフセットを変更できます。ZoneOffset は TemporalAdjuster も実装しますが、通常は引数として使用しても効果はありません。 ZonedDateTime のオフセットは、主にタイム ゾーンによって制御されます。 そのため、ローカルの日時とゾーンに対して有効なオフセットが 1 つしかないため、オフセットを変更しても通常は意味がありません。 ゾーン化された日時が夏時間の重複している場合、オフセットは 2 つの有効なオフセットを切り替えるために使用されます。 それ以外の場合は、オフセットは無視されます。 このメソッドの結果は、指定したアジャスターで TemporalAdjuster.adjustInto(Temporal) メソッドを呼び出し、これを引数として渡すことによって取得されます。 このインスタンスは不変であり、このメソッド呼び出しの影響を受けません。

Javaリファレンス。

適用対象