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

Класс Instant

Класс Instant представляет собой момент времени на временной шкале в UTC. Он хранит количество секунд и наносекунд, прошедших с начала эпохи Unix (1 января 1970 года, 00:00:00 UTC). Класс не хранит информацию о часовом поясе, поэтому идеально подходит для хранения меток времени. Объекты класса Instant неизменяемы, а все методы, изменяющие состояние, возвращают новый объект.

Синтаксис

Instant instant = Instant.now(); Instant instant = Instant.ofEpochSecond(seconds); Instant instant = Instant.ofEpochMilli(millis); Instant instant = Instant.parse("2024-01-01T00:00:00Z");

Пример

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

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

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

"2024-01-15T12:30:45.123456Z"

Пример

Давайте создадим момент времени из количества секунд, прошедших с начала эпохи Unix:

import java.time.Instant; public class Main { public static void main(String[] args) { Instant instant = Instant.ofEpochSecond(1700000000); System.out.println(instant); } }

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

"2023-11-14T22:13:20Z"

Пример

Давайте создадим момент времени из миллисекунд и получим обратно количество миллисекунд с помощью метода toEpochMilli:

import java.time.Instant; public class Main { public static void main(String[] args) { Instant instant = Instant.ofEpochMilli(1700000000000L); long res = instant.toEpochMilli(); System.out.println(res); } }

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

1700000000000

Пример

Давайте создадим момент времени из строки в формате ISO-8601 с помощью метода parse:

import java.time.Instant; public class Main { public static void main(String[] args) { Instant instant = Instant.parse("2024-01-15T12:30:45Z"); System.out.println(instant); } }

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

"2024-01-15T12:30:45Z"

Пример

Давайте добавим к моменту времени 5000 миллисекунд с помощью метода plusMillis и проверим результат:

import java.time.Instant; public class Main { public static void main(String[] args) { Instant instant = Instant.ofEpochSecond(1700000000); Instant res = instant.plusMillis(5000); System.out.println(res); } }

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

"2023-11-14T22:13:25Z"

Пример

Давайте сравним два момента времени с помощью методов isBefore и isAfter:

import java.time.Instant; public class Main { public static void main(String[] args) { Instant first = Instant.ofEpochSecond(1700000000); Instant second = Instant.ofEpochSecond(1700001000); System.out.println(first.isBefore(second)); System.out.println(first.isAfter(second)); } }

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

true false

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

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