Класс LocalTime

Класс LocalTime представляет время без даты и временной зоны. Он хранит часы, минуты, секунды и наносекунды. Время представлено в 24-часовом формате от 00:00 до 23:59:59.999999999.

Импорт

kotlinimport java.time.LocalTime

Создание объекта LocalTime

kotlin// Текущее время
val currentTime = LocalTime.now()

// Время из компонентов
val specificTime = LocalTime.of(14, 30, 45)

// Время из строки ISO-8601
val parsedTime = LocalTime.parse("14:30:45")

Основные методы

kotlinval time = LocalTime.of(14, 30, 45, 123000000)

// Получение компонентов времени
val hour = time.hour
val minute = time.minute
val second = time.second
val nano = time.nano

println("Hour: $hour, Minute: $minute, Second: $second, Nano: $nano")

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

kotlinString "Hour: 14, Minute: 30, Second: 45, Nano: 123000000"

Пример

Создание времени с помощью метода of:

kotlinval time1 = LocalTime.of(9, 15) // 09:15
val time2 = LocalTime.of(14, 30, 45) // 14:30:45
val time3 = LocalTime.of(23, 59, 59, 999999999) // 23:59:59.999999999

println(time1)
println(time2)
println(time3)

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

kotlinString "09:15"
String "14:30:45"
String "23:59:59.999999999"

Пример

Парсинг времени из строки:

kotlinval time1 = LocalTime.parse("09:15") // 09:15
val time2 = LocalTime.parse("14:30:45") // 14:30:45
val time3 = LocalTime.parse("23:59:59.999999999") // 23:59:59.999999999

println(time1)
println(time2)
println(time3)

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

kotlinString "09:15"
String "14:30:45"
String "23:59:59.999999999"

Пример

Манипуляции со временем:

kotlinval time = LocalTime.of(14, 30)

// Добавление часов, минут, секунд
val plusHours = time.plusHours(2)
val plusMinutes = time.plusMinutes(15)
val plusSeconds = time.plusSeconds(30)

// Вычитание часов, минут, секунд
val minusHours = time.minusHours(1)
val minusMinutes = time.minusMinutes(10)
val minusSeconds = time.minusSeconds(20)

println("Original: $time")
println("Plus 2 hours: $plusHours")
println("Plus 15 minutes: $plusMinutes")
println("Plus 30 seconds: $plusSeconds")
println("Minus 1 hour: $minusHours")
println("Minus 10 minutes: $minusMinutes")
println("Minus 20 seconds: $minusSeconds")

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

kotlinString "Original: 14:30"
String "Plus 2 hours: 16:30"
String "Plus 15 minutes: 14:45"
String "Plus 30 seconds: 14:30:30"
String "Minus 1 hour: 13:30"
String "Minus 10 minutes: 14:20"
String "Minus 20 seconds: 14:29:40"

Пример

Сравнение времени:

kotlinval time1 = LocalTime.of(9, 0)
val time2 = LocalTime.of(14, 30)
val time3 = LocalTime.of(9, 0)

val isBefore = time1.isBefore(time2)
val isAfter = time2.isAfter(time1)
val isEqual = time1.equals(time3)

println("Is time1 before time2: $isBefore")
println("Is time2 after time1: $isAfter")
println("Is time1 equal to time3: $isEqual")

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

kotlinString "Is time1 before time2: true"
String "Is time2 after time1: true"
String "Is time1 equal to time3: true"

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

  • функцию now класса LocalTime,
    которая возвращает текущее время
  • функцию of класса LocalTime,
    которая создает время из числовых компонентов
  • функцию parse класса LocalTime,
    которая преобразует строку в объект времени
  • класс LocalDateTime,
    который представляет дату и время