Menu
Coddy logo textTech

Utilisation de LocalDateTime

Fait partie de la section Logique & Flux du Journey Java de Coddy — leçon 56 sur 59.

LocalDateTime en Java combine à la fois la date et l'heure. C'est utile lorsque vous devez travailler avec les deux composants, comme les horaires d'événements ou les horodatages.

Créer la date et l'heure actuelles

LocalDateTime now = LocalDateTime.now();

Créer une date et une heure spécifiques :

LocalDateTime dateTime = LocalDateTime.of(2024, 3, 15, 14, 30);
// 2024-03-15 14:30

Après l'exécution du code ci-dessus, dateTime contient :

2024-03-15T14:30

Formater une date et une heure :

LocalDateTime dateTime = LocalDateTime.of(2024, 3, 15, 14, 30);
String formatted = dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm"));
challenge icon

Défi

Facile

Créez une méthode nommée processDateTime qui prend quatre arguments :

  1. Une String (dateTimeStr) au format "yyyy-MM-dd HH:mm"
  2. Un entier (amount) à ajouter ou soustraire
  3. Une String (unit) soit "hours", "days", ou "months"
  4. Une String (operation) soit "add" ou "subtract"

La méthode doit :

  1. Analyser la chaîne de date et heure d'entrée
  2. Effectuer l'opération spécifiée
  3. Retourner des informations formatées sur le résultat

Les messages de retour doivent être :

  • Si format invalide : retourner "Invalid date time format"
  • Si unité invalide : retourner "Invalid unit"
  • Si opération invalide : retourner "Invalid operation"
  • En cas de succès : retourner "Original: [datetime], New: [new_datetime], Day: [day_name]"

Aide-mémoire

LocalDateTime combine à la fois la date et l'heure en Java.

Créez la date et l'heure actuelles :

LocalDateTime now = LocalDateTime.now();

Créez une date et une heure spécifiques :

LocalDateTime dateTime = LocalDateTime.of(2024, 3, 15, 14, 30);
// Résultat : 2024-03-15T14:30

Formatez une date et une heure :

LocalDateTime dateTime = LocalDateTime.of(2024, 3, 15, 14, 30);
String formatted = dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm"));

Essayez vous-même

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) {
        // Écrivez votre code ici
    }
    
    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));
    }
}
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Logique & Flux