Метод toEpochDay класса Java LocalDate

JavaBeginner
Практиковаться сейчас

Введение

Класс Java LocalDate предоставляет метод toEpochDay(), который можно использовать для преобразования даты в день Эпохи. Счет дней Эпохи - это количество дней, прошедших с 1 января 1970 года. В этом практическом занятии вы узнаете, как использовать метод toEpochDay() и его синтаксис.

Настройка проекта

Для использования метода toEpochDay() сначала нужно создать Java-проект. Откройте терминал и выполните следующую команду, чтобы создать директорию с именем "myProject":

mkdir myProject

Теперь перейдите в директорию проекта с помощью команды cd:

cd myProject/

Создайте класс Java

В этом шаге мы создадим Java-файл с именем DateDemo.java. Запустите следующую команду в терминале, чтобы создать файл:

touch DateDemo.java

Откройте файл в текстовом редакторе с использованием следующей команды:

touch DateDemo.java

Примечание: второй раз вы написали ту же команду touch DateDemo.java. Возможно, это ошибка. Правильно было бы использовать команду для открытия файла в редакторе, например, nano DateDemo.java для редактора Nano или vim DateDemo.java для Vim.

Реализация метода LocalDate toEpochDay()

В этом шаге мы реализуем метод toEpochDay(), чтобы преобразовать LocalDate в день Эпохи.

Добавьте следующий код в файл DateDemo.java:

import java.time.LocalDate;

public class DateDemo {
    public static void main(String[] args) {
        // Создайте объект LocalDate для 10 января 1970 года
        LocalDate localDate = LocalDate.of(1970, 1, 10);

        // Получите количество дней Эпохи для объекта localDate
        long epochDay = localDate.toEpochDay();

        // Выведите количество дней Эпохи
        System.out.println("Количество дней Эпохи: " + epochDay);
    }
}

Сохраните файл и выйдите из него с помощью Ctrl+X, Y, Enter.

Компилировать Java-файл

В этом шаге мы скомпилируем файл DateDemo.java с использованием команды javac. Запустите следующую команду в терминале:

javac DateDemo.java

В результате этого в той же директории будет сгенерирован файл DateDemo.class.

Запустить Java-программу

В этом шаге мы запустим программу DateDemo. Запустите следующую команду в терминале:

java DateDemo

В результате этого программа будет запущена, и будет выведено количество дней Эпохи для 10 января 1970 года.

Протестировать метод LocalDate toEpochDay() с другой датой

В этом шаге мы проверим метод toEpochDay() с другой датой. Измените объект LocalDate, чтобы он представлял 15 января 2021 года:

LocalDate localDate = LocalDate.of(2021, 1, 15);

Скомпилируйте программу снова с использованием команды javac:

javac DateDemo.java

Запустите программу снова с использованием команды java:

java DateDemo

В результате должно быть выведено количество дней Эпохи для 15 января 2021 года.

Использовать метод toEpochDay() для вычисления разницы между двумя датами

В этом шаге мы будем использовать метод toEpochDay() для вычисления разницы между двумя датами в днях.

Добавьте следующий код в метод main:

// Создайте два объекта LocalDate
LocalDate date1 = LocalDate.of(2010, 5, 10);
LocalDate date2 = LocalDate.of(2020, 3, 15);

// Вычислите разницу между двумя датами в днях
long diffInDays = date2.toEpochDay() - date1.toEpochDay();

// Выведите разницу в днях
System.out.println("Разница в днях: " + diffInDays);

Сохраните файл и выйдите из него с помощью Ctrl+X, Y, Enter.

Скомпилируйте программу снова с использованием команды javac:

javac DateDemo.java

Запустите программу снова с использованием команды java:

java DateDemo

В результате должно быть выведено разница между 10 мая 2010 года и 15 марта 2020 года в днях.

Использовать метод toEpochDay() с текущей датой

В этом шаге мы будем использовать метод toEpochDay() для получения количества дней Эпохи для текущей даты.

Добавьте следующий код в метод main:

// Получите текущую дату
LocalDate today = LocalDate.now();

// Получите количество дней Эпохи для сегодняшней даты
long todayEpochDay = today.toEpochDay();

// Выведите количество дней Эпохи для сегодняшней даты
System.out.println("Количество дней Эпохи сегодня: " + todayEpochDay);

Сохраните файл и выйдите из него с помощью Ctrl+X, Y, Enter.

Скомпилируйте программу снова с использованием команды javac:

javac DateDemo.java

Запустите программу снова с использованием команды java:

java DateDemo

В результате должно быть выведено количество дней Эпохи для сегодняшней даты.

Использовать метод toEpochDay() с датой високосного года

В этом шаге мы будем использовать метод toEpochDay() с датой, которая попадает на високосный год.

Добавьте следующий код в метод main:

// Создайте объект LocalDate для 29 февраля 2020 года
LocalDate leapDate = LocalDate.of(2020, 2, 29);

// Получите количество дней Эпохи для 29 февраля 2020 года
long leapEpochDay = leapDate.toEpochDay();

// Выведите количество дней Эпохи для 29 февраля 2020 года
System.out.println("Количество дней Эпохи для 29 февраля 2020 года: " + leapEpochDay);

Сохраните файл и выйдите из него с помощью Ctrl+X, Y, Enter.

Скомпилируйте программу снова с использованием команды javac:

javac DateDemo.java

Запустите программу снова с использованием команды java:

java DateDemo

В результате должно быть выведено количество дней Эпохи для 29 февраля 2020 года.

Очистить проект

В этом шаге мы очистим проект, удалив файлы DateDemo.java и DateDemo.class.

Запустите следующую команду в терминале, чтобы удалить файл DateDemo.java:

rm DateDemo.java

Запустите следующую команду в терминале, чтобы удалить файл DateDemo.class:

rm DateDemo.class

Резюме

В этом практическом занятии вы узнали, как использовать метод toEpochDay() для преобразования LocalDate в день Эпохи. Также вы узнали, как вычислять разницу между двумя датами с использованием метода toEpochDay() и как получить количество дней Эпохи для текущей даты. Наконец, вы узнали, как использовать метод toEpochDay() с датой, которая попадает на високосный год.