Дата и время Java
Даты 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
}
}
Вывод будет:
2022-01-29
Показать текущее время
Чтобы отобразить текущее время (часы, минуты, секунды и наносекунды), импортируйте 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);
}
}
Вывод будет:
16:22:25.053018
Отображение текущей даты и времени
Чтобы отобразить текущую дату и время, импортируйте 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);
}
}
Вывод будет:
2022-01-29T16:22:25.053674
Форматирование даты и времени
Буква «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: 2022-01-29T16:22:25.054469
After Formatting: 29-01-2022 16:22:25
Метод ofPattern()
принимает все виды значений, если вы хотите отобразить дату и время в другом формате. Например:
Value | Example | Tryit |
---|---|---|
yyyy-MM-dd | "1988-09-29" | |
dd/MM/yyyy | "29/09/1988" | |
dd-MMM-yyyy | "29-Sep-1988" | |
E, MMM dd yyyy | "Thu, Sep 29 1988" |