1. LocalTimeKlasse

Der LocalTimeKurs wurde für Fälle erstellt, in denen Sie mit der Zeit, aber ohne Datum arbeiten müssen. Angenommen, Sie schreiben eine Weckeranwendung. Die Uhrzeit ist Ihnen wichtig, das Datum jedoch nicht.

Die LocalTimeKlasse ist der Klasse sehr ähnlich LocalDate– ihre Objekte können nach der Erstellung ebenfalls nicht geändert werden.

Aktuelle Uhrzeit abrufen

Um ein neues LocalTimeObjekt zu erstellen, müssen Sie die statische now()Methode verwenden. Beispiel:

LocalTime time = LocalTime.now();

Wo timeist eine LocalTimeVariable und ein Aufruf der statischen Methode der Klasse.LocalTime.now()now()LocalTime

Beispiel:

Code Konsolenausgabe
LocalTime time = LocalTime.now();
System.out.println("Now = " + time);

Now = 09:13:13.642881600

Auf den Punkt folgt die aktuelle Anzahl der Nanosekunden.

2. Eine bestimmte Zeit ermitteln

Um eine bestimmte Zeit zu erhalten, müssen Sie die statische of()Methode verwenden. Beispiel:

LocalTime time = LocalTime.of(hours, minutes, seconds, nanoseconds);

Sie geben Stunden, Minuten, Sekunden und Nanosekunden ein.

Beispiel:

Code Konsolenausgabe
LocalTime time = LocalTime.of(12, 15, 0, 100);
System.out.println("Now = " + time);
Now = 12:15:00.000000100

Es gibt übrigens noch zwei weitere Varianten dieser Methode:

LocalTime time = LocalTime.of(hours, minutes, seconds);

Und

LocalTime time = LocalTime.of(hours, minutes);

Sie können also das verwenden, was für Sie bequemer ist.

Ermitteln einer Zeit basierend auf dem Index einer Sekunde

Sie können die Zeit auch anhand des Sekundenindex eines Tages ermitteln. Dazu haben wir die statische ofSecondOfDay()Methode:

LocalTime time = LocalTime.ofSecondOfDay(seconds);

Dabei ist Sekunden die Anzahl der Sekunden seit Beginn des Tages.

Beispiel:

Code Konsolenausgabe
LocalTime time = LocalTime.ofSecondOfDay(10000);
System.out.println(time);

02:46:40

Ja, 10.000 Sekunden sind etwas weniger als drei Stunden. Es ist alles richtig.

3. Elemente der Zeit erfassen

Um den Wert eines bestimmten Zeitelements von einem LocalTimeObjekt zu erhalten, haben wir folgende Methoden:

Methode Beschreibung
int getHour()
Gibt die Stunden zurück
int getMinute()
Gibt die Minuten zurück
int getSecond()
Gibt die Sekunden zurück
int getNano()
Gibt die Nanosekunden zurück

Beispiel:

Code Konsolenausgabe
LocalTime now = LocalTime.now();
System.out.println(now.getHour());
System.out.println(now.getMinute());
System.out.println(now.getSecond());
System.out.println(now.getNano());

2
46
40
0

4. Ändern der Zeit in einem LocalTimeObjekt

Die LocalTimeKlasse verfügt außerdem über Methoden, mit denen Sie mit der Zeit arbeiten können. Die Implementierung dieser Methoden erfolgt analog zu den Methoden der LocalDateKlasse: Sie verändern nicht das bestehende LocalTimeObjekt, sondern geben ein neues mit den gewünschten Daten zurück.

Hier sind die Methoden der LocalTimeKlasse:

Methode Beschreibung
plusHours(int hours)
Fügt Stunden hinzu
plusMinutes(int minutes)
Fügt Minuten hinzu
plusSeconds(int seconds)
Fügt Sekunden hinzu
plusNanos(int nanos)
Fügt Nanosekunden hinzu
minusHours(int hours)
Subtrahiert Stunden
minusMinutes(int minutes)
Subtrahiert Minuten
minusSeconds(int seconds)
Subtrahiert Sekunden
minusNanos(int nanos)
Subtrahiert Nanosekunden

Beispiel:

Code Konsolenausgabe
LocalTime time = LocalTime.now();
LocalTime time2 = time.plusHours(2);
LocalTime time3 = time.minusMinutes(40);
LocalTime time4 = time.plusSeconds(3600);

System.out.println(time);
System.out.println(time2);
System.out.println(time3);
System.out.println(time4);





10:33:55.978012200
12:33:55.978012200
09:53:55.978012200
11:33:55.978012200

Beachten Sie, dass wir in jedem Fall eine neue Zeit erhalten, die relativ zum ursprünglichen timeObjekt ist. Wenn Sie 3600 secondszu einer Zeit addieren, dann addieren Sie genau 1hour.