Lucrul cu datele: LocalDate
Clasa LocalDate din pachetul java.time este destinată pentru lucrul cu datele. Funcționalitatea acestei clase permite crearea și modificarea datelor prin adăugarea și scăderea unui anumit număr de zile/luni/ani.
Metodele principale ale clasei LocalDate:
- static LocalDate now(): returnează un obiect care reprezintă data curentă
- static LocalDate of(int year, int month, int day): returnează un obiect care reprezintă o dată cu un anumit an, lună și zi
- int getYear(): returnează anul
- int getMonthValue(): returnează luna
- int getDayOfMonth(): returnează ziua lunii (valoare între 1 și 31)
- int getDayOfYear(): returnează numărul zilei din an (valoare între 1 și 365)
- DayOfWeek getDayOfWeek(): returnează ziua săptămânii sub forma unei valori din enum-ul DayOfWeek
- LocalDate plusDays(int n): adaugă un anumit număr de zile la dată
- LocalDate plusWeeks(int n): adaugă un anumit număr de săptămâni la dată
- LocalDate plusMonths(int n): adaugă un anumit număr de luni la dată
- LocalDate plusYears(int n): adaugă un anumit număr de ani la dată
- LocalDate minusDays(int n): scade un anumit număr de zile din dată
- LocalDate minusMonths(int n): scade un anumit număr de luni din dată
- LocalDate minusWeeks(int n): scade un anumit număr de săptămâni din dată
- LocalDate minusYears(int n): scade un anumit număr de ani din dată
Obținerea informațiilor despre data curentă:
import java.time.DayOfWeek;
import java.time.LocalDate;
public class Program {
public static void main(String[] args) {
LocalDate date = LocalDate.now(); // obținem data curentă
int year = date.getYear();
int month = date.getMonthValue();
int dayOfMonth = date.getDayOfMonth();
DayOfWeek dayOfWeek = date.getDayOfWeek();
System.out.println(date);
System.out.println(dayOfWeek);
System.out.printf("%d.%d.%d \n", dayOfMonth, month, year);
}
}
Rezultatul în consolă:
2018-11-11
SUNDAY
11.11.2018
Crearea și obținerea informațiilor despre o dată aleatorie:
LocalDate date = LocalDate.of(1914, 12, 31);
System.out.println(date);
Operațiuni cu date - adăugare și eliminare:
LocalDate date = LocalDate.of(1914, 7, 28);
date = date.plusYears(4);
date = date.plusMonths(3);
date = date.plusDays(14);
System.out.println(date); // 1918-11-11
date = date.minusMonths(10);
date = date.minusDays(3);
System.out.println(date); // 1918-01-08