Java Date

Оновлено: 22.05.2023

Дати на Java

Java не має вбудованого класу Date, але ми можемо імпортувати пакет java.time для роботи з API дати і часу. Пакет містить багато класів дати і часу. Наприклад:

Class Description LocalDate Represents a date (year, month, day (yyyy-MM-dd)) LocalTime Represents a time (hour, minute, second and nanoseconds (HH-mm-ss-ns)) LocalDateTime Represents both a date and a time (yyyy-MM-dd-HH-mm-ss-ns) DateTimeFormatter Formatter for displaying and parsing date-time objects
Якщо ви не знаєте, що таке пакет, прочитайте наш підручник з пакетів Java.

Відображати поточну дату

Щоб відобразити поточну дату, імпортуйте клас java.time.LocalDate і використовуйте його метод now():

import java.time.LocalDate; // import the LocalDate class

public class Main {
  public static void main(String[] args) {
    LocalDate myObj = LocalDate.now(); // Create a date object
    System.out.println(myObj); // Display the current date
  }
}

На виході буде:

2023-05-22

Відображати поточний час

Для відображення поточного часу (години, хвилини, секунди і наносекунди) імпортуйте клас java.time.LocalTime і використовуйте його метод now():

import java.time.LocalTime; // import the LocalTime class

public class Main {
  public static void main(String[] args) {
    LocalTime myObj = LocalTime.now();
    System.out.println(myObj);
  }
}

На виході буде:

14:15:17.541125

Відображати поточну дату та час

Щоб відобразити поточну дату і час, імпортуйте клас java.time.LocalDateTime і використовуйте його метод now():

import java.time.LocalDateTime; // import the LocalDateTime class

public class Main {
  public static void main(String[] args) {
    LocalDateTime myObj = LocalDateTime.now();
    System.out.println(myObj);
  }
}

На виході буде:

2023-05-22T14:15:17.542994

Форматування дати та часу

Символ "T" у наведеному вище прикладі використовується для відокремлення дати від часу. Ви можете використовувати клас DateTimeFormatter з методом ofPattern() у тому ж пакунку для форматування або розбору об'єктів дата-час. У наступному прикладі з дати-часу буде вилучено "T" і наносекунди:

import java.time.LocalDateTime; // Import the LocalDateTime class
import java.time.format.DateTimeFormatter; // Import the DateTimeFormatter class

public class Main {
  public static void main(String[] args) {
    LocalDateTime myDateObj = LocalDateTime.now();
    System.out.println("Before formatting: " + myDateObj);
    DateTimeFormatter myFormatObj = DateTimeFormatter.ofPattern("dd-MM-yyyy HH:mm:ss");

    String formattedDate = myDateObj.format(myFormatObj);
    System.out.println("After formatting: " + formattedDate);
  }
}

На виході буде:

Before Formatting: 2023-05-22T14:15:17.542911
After Formatting: 22-05-2023 14:15:17

Метод ofPattern() приймає будь-які значення, якщо ви хочете відобразити дату і час в іншому форматі. Наприклад:

Value Example Tryit yyyy-MM-dd "1988-09-29" Try it » dd/MM/yyyy "29/09/1988" Try it » dd-MMM-yyyy "29-Sep-1988" Try it » E, MMM dd yyyy "Thu, Sep 29 1988" Try it »