Zastosowanie LocalDateTime
Część sekcji Logika i przepływ sterowania ścieżki Java w Coddy. Lekcja 56 z 59.
LocalDateTime w Javie łączy datę i godzinę. Jest przydatny, gdy musisz pracować z obiema składowymi, na przykład przy harmonogramach wydarzeń lub znacznikach czasu.
Utwórz bieżącą datę i godzinę
LocalDateTime now = LocalDateTime.now();Utwórz konkretną datę i godzinę:
LocalDateTime dateTime = LocalDateTime.of(2024, 3, 15, 14, 30);
// 2024-03-15 14:30Po wykonaniu powyższego kodu dateTime zawiera:
2024-03-15T14:30
Sformatuj datę i godzinę:
LocalDateTime dateTime = LocalDateTime.of(2024, 3, 15, 14, 30);
String formatted = dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm"));Wyzwanie
ŁatwyUtwórz metodę o nazwie processDateTime, która przyjmuje cztery argumenty:
- String (
dateTimeStr) w formacie "yyyy-MM-dd HH:mm" - Liczbę całkowitą (
amount) do dodania lub odjęcia - String (
unit) o wartości "hours", "days" lub "months" - String (
operation) o wartości "add" lub "subtract"
Metoda powinna:
- Parsować wejściowy ciąg znaków z datą i godziną
- Wykonać określoną operację
- Zwrócić sformatowane informacje o wyniku
Zwracane komunikaty powinny być następujące:
- Jeśli format jest nieprawidłowy: zwróć "Invalid date time format"
- Jeśli jednostka jest nieprawidłowa: zwróć "Invalid unit"
- Jeśli operacja jest nieprawidłowa: zwróć "Invalid operation"
- W przypadku powodzenia: zwróć "Original: [datetime], New: [new_datetime], Day: [day_name]"
Spróbuj swoich sił
import java.util.Scanner;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.time.format.DateTimeParseException;
public class Main {
public static String processDateTime(String dateTimeStr, int amount, String unit, String operation) {
// Wpisz tutaj swój kod
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String dateTimeStr = scanner.nextLine();
int amount = Integer.parseInt(scanner.nextLine());
String unit = scanner.nextLine();
String operation = scanner.nextLine();
System.out.println(processDateTime(dateTimeStr, amount, unit, operation));
}
}Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Logika i przepływ sterowania
1Tablice wielowymiarowe
Podstawy tablic 2DDostęp do elementów tablic 2DPętle zagnieżdżone z tablicami 2DPodsumowanie — tablice 2DDodawanie i odejmowanie macierzyTablice postrzępioneTablice 3D i większeTypowe wzorce dla tablic 2DPodsumowanie — wszystko o tablicach4HashSet — część 1
Czym jest HashSet?Dodawanie elementuUsuwanie elementuSprawdzanie, czy element istniejePusty i rozmiarCzyszczenie i klonowaniePodsumowanie — HashSet10Data i czas
Podstawy LocalDateOperacje na LocalTimeZastosowanie LocalDateTimePeriod i DurationFormatowanie datObsługa stref czasowych2HashMap część 1
Czym jest HashMap?Deklarowanie HashMapDostęp do wartościSprawdzanie, czy klucz istniejeModyfikowanie słownikówPodsumowanie — HashMap3HashMap — część 2
Metody HashMapIterowanie za pomocą keySet()Iterowanie za pomocą entrySet()Zagnieżdżona HashMapPowtórka — zarządzanie magazynemPowtórka — operacje na HashMap6Zaawansowany przepływ sterowania
Instrukcje etykietująceWyrażenie switchDopasowywanie wzorcówKlauzule ochronnePowtórzenie — przepływ sterowania9Projekt — licznik unikalnych słów
Wprowadzanie i przechowywanie tekstuPrzetwarzanie słówPoćwicz samodzielnie: Kompilator Java online