Introducere în Date și Timp în Java

Input/Output și Fluxuri în Java

Alex Liu

Software Development Engineer

Crearea obiectelor de tip Date

  • Clasa LocalDate
    • Reprezintă date fără oră
  • Clasa LocalTime
    • Reprezintă ore fără dată
  • Importați clasele necesare
import java.time.LocalDate;
import java.time.LocalTime;
Input/Output și Fluxuri în Java

Crearea obiectelor de tip Date (continuare)

  • Obțineți data și ora curentă cu .now()
    LocalDate date = LocalDate.now();
    LocalTime time = LocalTime.now();
    System.out.println(date);
    System.out.println(time);
    
  • (Notă: Ora variază în funcție de momentul execuției programului)
2025-03-10
12:45:30.123456
Input/Output și Fluxuri în Java

Formatarea datelor în Java

  • DateTimeFormatter
    • Definește formate personalizate de dată
    • Suportă tipare precum yyyy-MM-dd, MM/dd/yyyy
  • Importați clasele necesare
    import java.time.LocalDate;
    import java.time.format.DateTimeFormatter;
    
Input/Output și Fluxuri în Java

Formatarea datelor în Java (continuare)

  • Creați o instanță LocalDate numită date
LocalDate date = LocalDate.now(); // Formatul curent va fi: `2025-03-10`
  • Creați un DateTimeFormatter cu tiparul MM/dd/yyyy folosind .ofPattern()
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("MM/dd/yyyy");
  • Aplicați DateTimeFormatter folosind metoda .format()
System.out.println(date.format(formatter))
03/10/2025
Input/Output și Fluxuri în Java

Parsarea unui șir de caractere în dată

  • Utilizarea LocalDate.parse() pentru a converti text într-o dată

    • Asigurați-vă că formatul corespunde șirului de intrare
  • Utilizați .parse() cu text în formatul yyyy-MM-dd pentru a obține un obiect Date

    LocalDate parsedDate = LocalDate.parse("2024-03-10");
    System.out.println(parsedDate);
    
  • Afișarea obiectului Date va returna:

    2024-03-10
    
Input/Output și Fluxuri în Java

Ajustarea datelor

  • Utilizați .plusDays() și .minusDays() pentru ajustarea datelor
LocalDate date = LocalDate.now();
// Valoarea curentă:
System.out.println(date); 
// Aplicați `.plusDays()` cu valoarea `7`
LocalDate futureDate = date.plusDays(7);
// Valoarea după ajustare
System.out.println(futureDate);
2025-03-10
2025-03-17
Input/Output și Fluxuri în Java

Ajustarea datelor (continuare)

  • Aplicați .minusDays() cu valoarea 7
    LocalDate pastDate = date.minusDays(7);
    System.out.println(pastDate);
    
  • Valoarea curentă pentru pastDate:
    2025-03-03
    
Input/Output și Fluxuri în Java

Rezumat

  • LocalDate și LocalTime gestionează datele și timpii separat
    • Notă: Ora variază în funcție de momentul execuției programului
    • .parse() convertește text într-o dată
    • .now() returnează data/ora curentă
  • DateTimeFormatter formatează și parsează date
    • Definește formate personalizate
    • Suportă tipare precum yyyy-MM-dd, MM/dd/yyyy
  • Calcule cu date folosind .plusDays() și .minusDays()`
Input/Output și Fluxuri în Java

Să exersăm!

Input/Output și Fluxuri în Java

Preparing Video For Download...