Verwenden Sie die neue Period-Klasse und die Duration-Klasse in Java 11, um Datumsangaben und Zeitintervalle zu verarbeiten.
Zusammenfassung: Java 11 führt die neue Period-Klasse und die Duration-Klasse ein, wodurch die Handhabung von Datums- und Zeitintervallen einfacher und flexibler wird. In diesem Artikel werden die grundlegenden Konzepte und die Verwendung dieser beiden Klassen vorgestellt und einige Codebeispiele bereitgestellt, um den Lesern zu helfen, diese Klassen besser zu verstehen und zu verwenden.
1. Periodenklasse
Die Periodenklasse wird verwendet, um das Intervall zwischen Datumsangaben darzustellen. Es enthält drei Felder: Jahr, Monat und Tag. Sie können ein Periodenobjekt mit dem folgenden Codebeispiel erstellen:
import java.time.LocalDate; import java.time.Period; public class PeriodExample { public static void main(String[] args) { LocalDate start = LocalDate.of(2021, 1, 1); LocalDate end = LocalDate.of(2022, 1, 1); Period period = Period.between(start, end); System.out.println("Years: " + period.getYears()); System.out.println("Months: " + period.getMonths()); System.out.println("Days: " + period.getDays()); } }
Das Ausgabeergebnis ist:
Years: 1 Months: 0 Days: 0
Im obigen Beispiel haben wirLocalDate
verwendet Klasse zur Darstellung von Datumsangaben und Verwendung der MethodePeriod.between()
zur Berechnung des Intervalls zwischen zwei Datumsangaben. Die Jahre, Monate und Tage des Intervalls können über die MethodengetYears()
,getMonths()
undgetDays()
ermittelt werden.LocalDate
类来表示日期,并使用Period.between()
方法来计算两个日期之间的间隔。可以通过getYears()
、getMonths()
和getDays()
方法来获取间隔的年、月和日数。
二、Duration类
Duration类用于表示时间之间的间隔。它以秒和纳秒为单位,可以通过下面的代码示例来创建一个Duration对象:
import java.time.LocalTime; import java.time.Duration; public class DurationExample { public static void main(String[] args) { LocalTime start = LocalTime.of(10, 0, 0); LocalTime end = LocalTime.of(12, 0, 0); Duration duration = Duration.between(start, end); System.out.println("Hours: " + duration.toHours()); System.out.println("Minutes: " + duration.toMinutes()); System.out.println("Seconds: " + duration.getSeconds()); } }
输出结果为:
Hours: 2 Minutes: 120 Seconds: 7200
上面的例子中,我们使用了LocalTime
类来表示时间,并使用Duration.between()
方法来计算两个时间之间的间隔。可以通过toHours()
、toMinutes()
和getSeconds()
方法来获取间隔的小时、分钟和秒数。
三、Period和Duration的操作
除了计算日期和时间间隔,Period和Duration类还提供了一些操作方法用于对间隔进行加减运算,如下所示:
import java.time.LocalDate; import java.time.Period; public class PeriodOperationExample { public static void main(String[] args) { LocalDate date = LocalDate.of(2021, 1, 1); Period period = Period.of(1, 2, 3); LocalDate result = date.plus(period); System.out.println("Result: " + result); } }
输出结果为:
Result: 2022-03-04
上面的例子中,我们使用了plus()
方法将指定的间隔加到日期上。可以使用plusYears()
、plusMonths()
和plusDays()
rrreee
Das Ausgabeergebnis lautet:rrreee
Im obigen Beispiel haben wir die KlasseLocalTime
verwendet, um die Zeit darzustellen und verwenden Sie die Methode
Duration.between()
, um das Intervall zwischen zwei Zeitpunkten zu berechnen. Die Stunden, Minuten und Sekunden des Intervalls können über die Methoden
toHours()
,
toMinutes()
und
getSeconds()
abgerufen werden.
3. Operationen von Periode und Dauer
plus()
verwendet, um das angegebene Intervall zum Datum hinzuzufügen. Sie können die Methoden
plusYears()
,
plusMonths()
und
plusDays()
verwenden, um die angegebene Anzahl von Jahren, Monaten und Tagen hinzuzufügen bzw. auf ein Datum.
Für die Duration-Klasse können Sie auch ähnliche Operationsmethoden verwenden, um Zeitintervalle zu addieren und zu subtrahieren. Fazit: Durch die Verwendung der Period-Klasse und der Duration-Klasse in Java 11 können wir Datums- und Zeitintervalle bequemer verarbeiten. Diese Klassen bieten umfassende Methoden zum Berechnen, Betreiben und Formatieren von Intervallen, sodass wir flexibler auf verschiedene Datums- und Zeitanforderungen reagieren können. Daher können wir während der Entwicklung geeignete Klassen auswählen, um Datums- und Zeitintervalle basierend auf bestimmten Szenarien zu verarbeiten und so die Lesbarkeit und Wartbarkeit des Codes zu verbessern. Referenz: Offizielle Oracle-Dokumentation: https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/time/Period.htmlOffizielle Oracle-Dokumentation: https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/time/Duration.htmlIch hoffe, dieser Artikel kann den Lesern helfen, die Period-Klasse besser zu verstehen und anzuwenden und Dauerklasse. Wenn Sie Fragen oder Anregungen zu diesen beiden Kategorien haben, können Sie gerne eine Nachricht hinterlassen. Danke!
Das obige ist der detaillierte Inhalt vonVerwenden Sie die neuen Period- und Duration-Klassen in Java 11, um Datums- und Zeitintervalle zu verarbeiten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!