РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
936 of 1163 menu

Класс LocalDateTime

Класс LocalDateTime хранит одновременно дату (год, месяц, день) и время (часы, минуты, секунды, наносекунды), но без информации о часовом поясе. Он неизменяем: все методы, которые изменяют дату или время, возвращают новый объект LocalDateTime, а исходный остается прежним. Объект создается с помощью статических методов now (текущие дата и время), of (по числовым значениям) и parse (из строки в формате ISO, например 2024-01-15T10:30).

Синтаксис

LocalDateTime.of(year, month, dayOfMonth, hour, minute) LocalDateTime.of(year, month, dayOfMonth, hour, minute, second) LocalDateTime.now() LocalDateTime.parse("2024-01-15T10:30")

Пример

Давайте создадим объект LocalDateTime с конкретными значениями даты и времени и выведем его на экран:

import java.time.LocalDateTime; public class Main { public static void main(String[] args) { LocalDateTime dt = LocalDateTime.of(2024, 1, 15, 10, 30); System.out.println(dt); } }

Результат выполнения кода:

"2024-01-15T10:30"

Пример

Теперь получим текущие дату и время с помощью метода now:

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

Результат выполнения кода (зависит от момента запуска):

"2024-01-15T10:30:45.123"

Пример

Разберем LocalDateTime на отдельные части с помощью методов getYear, getMonthValue, getDayOfMonth, getHour и getMinute:

import java.time.LocalDateTime; public class Main { public static void main(String[] args) { LocalDateTime dt = LocalDateTime.of(2024, 1, 15, 10, 30); System.out.println(dt.getYear()); System.out.println(dt.getMonthValue()); System.out.println(dt.getDayOfMonth()); System.out.println(dt.getHour()); System.out.println(dt.getMinute()); } }

Результат выполнения кода:

2024 1 15 10 30

Пример

Объект LocalDateTime неизменяем, поэтому метод plusDays возвращает новый объект, а исходный не меняется:

import java.time.LocalDateTime; public class Main { public static void main(String[] args) { LocalDateTime dt = LocalDateTime.of(2024, 1, 15, 10, 30); LocalDateTime res = dt.plusDays(5); System.out.println(dt); System.out.println(res); } }

Результат выполнения кода:

"2024-01-15T10:30" "2024-01-20T10:30"

Пример

Сравним два объекта LocalDateTime с помощью методов isBefore и isAfter:

import java.time.LocalDateTime; public class Main { public static void main(String[] args) { LocalDateTime dt1 = LocalDateTime.of(2024, 1, 15, 10, 30); LocalDateTime dt2 = LocalDateTime.of(2024, 1, 20, 10, 30); System.out.println(dt1.isBefore(dt2)); System.out.println(dt1.isAfter(dt2)); } }

Результат выполнения кода:

true false

Смотрите также

  • метод now,
    который возвращает текущие дату и время
  • метод of,
    который создает объект по числовым значениям
  • метод parse,
    который разбирает строку в дату и время
  • метод format,
    который форматирует дату и время в строку
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить