LocalTime Operationen
Teil des Abschnitts Logik & Ablauf der Java-Journey von Coddy. Lektion 55 von 59.
LocalTime in Java stellt eine Uhrzeit ohne Datum oder Zeitzone dar. Es ist nützlich, um mit Tageszeiten wie Öffnungszeiten oder Zeitplänen zu arbeiten.
Aktuelle Uhrzeit erstellen:
LocalTime now = LocalTime.now();Erstelle eine bestimmte Uhrzeit:
LocalTime time = LocalTime.of(14, 30);
// 14:30 (2:30 PM)Nach der Ausführung des obigen Codes enthält time:
14:30
Zeit addieren oder subtrahieren:
LocalTime time = LocalTime.of(14, 30);
LocalTime later = time.plusMinutes(45); // 15:15
LocalTime earlier = time.minusHours(1); // 13:30Eine Uhrzeit aus einem String im Format HH:mm parsen:
LocalTime time = LocalTime.parse("14:30"); // 14:30Ein Zeichenfolgenwert, der keine gültige Uhrzeit darstellt, wie "25:70", führt dazu, dass parse() eine DateTimeParseException auslöst, dieselbe Ausnahme wie LocalDate.parse(). Fange sie mit try-catch ab:
try {
LocalTime time = LocalTime.parse("25:70");
} catch (DateTimeParseException e) {
System.out.println("Invalid time format");
}Aufgabe
EinfachErstelle eine Methode namens processTime, die vier Argumente entgegennimmt:
- Einen String (
timeStr) im Format "HH:mm" - Eine Ganzzahl (
amount), die addiert oder subtrahiert werden soll - Einen String (
unit), entweder "hours" oder "minutes" - Einen String (
operation), entweder "add" oder "subtract"
Die Methode sollte:
- Den Eingabe-Zeitstring parsen
- Die angegebene Operation ausführen
- Formatierte Informationen zum Ergebnis zurückgeben
Die zurückgegebenen Meldungen sollten lauten:
- Bei ungültigem Zeitformat: "Invalid time format" zurückgeben
- Bei ungültiger Einheit: "Invalid unit" zurückgeben
- Bei ungültiger Operation: "Invalid operation" zurückgeben
- Bei Erfolg: "Original: [time], New: [new_time]" zurückgeben
Probier es selbst
import java.util.Scanner;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
import java.time.format.DateTimeParseException;
public class Main {
public static String processTime(String timeStr, int amount, String unit, String operation) {
// Schreibe deinen Code hier
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String timeStr = scanner.nextLine();
int amount = Integer.parseInt(scanner.nextLine());
String unit = scanner.nextLine();
String operation = scanner.nextLine();
System.out.println(processTime(timeStr, amount, unit, operation));
}
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Logik & Ablauf
1Mehrdimensionale Arrays
Grundlagen der 2D-ArraysZugriff auf 2D-Array-ElementeVerschachtelte Schleifen mit 2D-ArraysZusammenfassung - 2D-ArraysMatrixaddition & SubtraktionJagged Arrays3D-Arrays und darüber hinausGängige 2D-Array-MusterZusammenfassung - Alles über Arrays4HashSet Teil 1
Was ist ein HashSet?Ein Element hinzufügenEin Element entfernenPrüfen, ob ein Element vorhanden istLeer und GrößeLeeren und KlonenZusammenfassung - HashSet10Datum und Zeit
LocalDate GrundlagenLocalTime OperationenLocalDateTime VerwendungPeriod und DurationDatumsformatierungZeitzonenbehandlung2HashMap Teil 1
Was ist eine HashMap?Eine HashMap deklarierenWerte abrufenPrüfen, ob ein Schlüssel existiertWörterbücher modifizierenZusammenfassung - HashMap3HashMap Teil 2
HashMap-MethodenMit keySet() iterierenMit entrySet() iterierenVerschachtelte HashMapZusammenfassung - Lager verwaltenZusammenfassung - HashMap-Operationen6Erweiterter Steuerungsfluss
Beschriftete AnweisungenSwitch-AusdruckMusterabgleichSchutzklauselnZusammenfassung - Steuerungsfluss9Projekt - Einzigartiger Wortzähler
Texteingabe und SpeicherungWortverarbeitungÜbe selbstständig: Online-Java-Compiler