Sprache

ZonedDateTime.Until(ITemporal, ITemporalUnit) Methode

Definition

Berechnet die Zeitspanne bis zu einer anderen Datums-Uhrzeit in Bezug auf die angegebene Einheit.

[Android.Runtime.Register("until", "(Ljava/time/temporal/Temporal;Ljava/time/temporal/TemporalUnit;)J", "", ApiSince=26)]
public long Until(Java.Time.Temporal.ITemporal? endExclusive, Java.Time.Temporal.ITemporalUnit? unit);
[<Android.Runtime.Register("until", "(Ljava/time/temporal/Temporal;Ljava/time/temporal/TemporalUnit;)J", "", ApiSince=26)>]
abstract member Until : Java.Time.Temporal.ITemporal * Java.Time.Temporal.ITemporalUnit -> int64
override this.Until : Java.Time.Temporal.ITemporal * Java.Time.Temporal.ITemporalUnit -> int64

Parameter

endExclusive
ITemporal

Enddatum, exklusiv, das in eine ZonedDateTime konvertiert wird, nicht NULL

unit
ITemporalUnit

die Einheit, in der der Betrag gemessen werden soll, nicht null

Gibt zurück

die Zeitspanne zwischen dieser Datums- und Enddatums-Uhrzeit

Implementiert

Attribute

Hinweise

Berechnet die Zeitspanne bis zu einer anderen Datums-Uhrzeit in Bezug auf die angegebene Einheit. Dadurch wird die Zeitspanne zwischen zwei ZonedDateTime-Objekten in Bezug auf eine einzelne TemporalUnit berechnet. Die Anfangs- und Endpunkte sind dies und die angegebene Datums-/Uhrzeit. Das Ergebnis wird negativ sein, wenn das Ende vor dem Start liegt. Der Betrag in Tagen zwischen zwei Datums-Uhrzeiten kann z. B. mit startDateTime.until(endDateTime, DAYS) berechnet werden. Der an diese Methode übergebene Temporal wird mithilfe von (TemporalAccessor) in eine ZonedDateTime konvertiert. Wenn sich die Zeitzone zwischen den beiden zonenbezogenen Datums-/Uhrzeiten unterscheidet, wird die angegebene Enddatum-Uhrzeit normalisiert, um dieselbe Zone wie diese Datumszeit zu haben. Die Berechnung gibt eine ganze Zahl zurück, die die Anzahl der vollständigen Einheiten zwischen den beiden Datums-/Uhrzeiten darstellt. Beispielsweise beträgt der Betrag in Monaten zwischen 2012-06-15T00:00Z und 2012-08-14T23:59Z nur einen Monat, da es sich um eine Minute unter zwei Monaten handelt. Es gibt zwei äquivalente Methoden zur Verwendung dieser Methode. Die erste besteht darin, diese Methode aufzurufen. Die zweite ist die Verwendung von TemporalUnit.between(Temporal, Temporal): Die Wahl sollte auf der Grundlage getroffen werden, auf deren Grundlage der Code lesbarer wird. Die Berechnung wird in dieser Methode für ChronoUnit implementiert. Die Einheiten NANOS, MICROS, MILLIS, SEKUNDEN, MINUTEN, STUNDEN und HALF_DAYS, TAGE, WOCHEN, MONATE, JAHRE, JAHRZEHNTE, JAHRHUNDERTE, MILLENNIA und ERAS werden unterstützt. Andere ChronoUnit-Werte lösen eine Ausnahme aus. Die Berechnung für Datums- und Uhrzeiteinheiten unterscheidet sich. Datumseinheiten werden in der lokalen Zeitlinie mit der lokalen Datums-/Uhrzeit ausgeführt. Beispielsweise wird der Zeitraum von Mittag am Tag 1 bis Mittag am folgenden Tag in Tagen immer als genau einen Tag gezählt, unabhängig davon, ob es eine Sommereinsparänderung gab oder nicht. Zeiteinheiten werden in der Sofortigen Zeitlinie ausgeführt. Die Berechnung konvertiert effektiv beide Zonendatumszeiten in Instants und berechnet dann den Zeitraum zwischen den Instants. Beispielsweise kann der Zeitraum von Mittag am Tag 1 bis Mittag am folgenden Tag in Stunden 23, 24 oder 25 Stunden (oder ein anderer Betrag) betragen, je nachdem, ob eine Sommerersparnis aufgetreten ist oder nicht. Wenn es sich bei der Einheit nicht um eine ChronoUnit handelt, wird das Ergebnis dieser Methode durch Aufrufen von TemporalUnit.between(Temporal, Temporal) abgerufen, das als erstes Argument und die konvertierte Eingabe als zweites Argument übergeben wird. Diese Instanz ist unveränderlich und von diesem Methodenaufruf nicht betroffen.

Java Referenz für java.time.ZonedDateTime.until.

Gilt für: