1. введение
В этой краткой статье описывается, как мы можем получить текущую дату, текущее время и текущую метку времени в Java 8.
2. Текущая Дата
Во-первых, давайте использовать java.time.LocalDate для получения текущей системной даты:
LocalDate localDate = LocalDate.now();
Для получения данных в любом другом часовом поясе мы можем использовать LocalDate.now(ZoneId) :
LocalDate localDate = LocalDate.now(ZoneId.of("GMT+02:30"));
Мы также можем использовать java.time.LocalDateTime для получения экземпляра LocalDate:
LocalDateTime localDateTime = LocalDateTime.now(); LocalDate localDate = localDateTime.toLocalDate();
3. Текущее время
С помощью java.time.LocalTime , давайте получим текущее системное время:
LocalTime localTime = LocalTime.now();
Чтобы получить текущее время в определенном часовом поясе, мы можем использовать LocalTime.now(ZoneId) :
LocalTime localTime = LocalTime.now(ZoneId.of("GMT+02:30"));
Мы также можем использовать java.time.LocalDateTime для получения экземпляра LocalTime:
LocalDateTime localDateTime = LocalDateTime.now(); LocalTime localTime = localDateTime.toLocalTime();
4. Текущая метка времени
Используйте java.time.Instant , чтобы получить отметку времени из эпохи Java. Согласно JavaDoc , “эпоха-секунды измеряются от стандартной эпохи Java 1970-01-01T00:00:00Z, где мгновения после эпохи имеют положительные значения:
Instant instant = Instant.now(); long timeStampMillis = instant.toEpochMilli();
Мы можем получить количество эпох-секунд секунд:
Instant instant = Instant.now(); long timeStampSeconds = instant.getEpochSecond();
5. Заключение
В этом уроке мы сосредоточились на использовании java.time.* для получения текущей даты, времени и метки времени.
Как всегда, код для статьи доступен на GitHub .