Иллюстрированный самоучитель по Java

Работа с датами и временем

Методы работы с датами и показаниями времени собраны в два класса: Calendar и Date из пакета java.utii.

Объект класса Date хранит число миллисекунд, прошедших с 1 января 1970 г. 00:00:00 по Гринвичу. Это "день рождения" UNIX, он называется " Epoch ".

Класс Date удобно использовать для отсчета промежутков времени в миллисекундах.

Получить текущее число миллисекунд, прошедших с момента Epoch на той машине, где выполняется программа, можно статическим методом:

System.currentTimeMillis()

В классе Date два конструктора. Конструктор Date () заносит в создаваемый объект текущее время машины, на которой выполняется программа, по системным часам, а конструктор Date (long millisec) – указанное число.

Получить значение, хранящееся в объекте, можно методом long getTime (), установить новое значение – методом setTime(long newTime).

Три логических метода сравнивают отсчеты времени:

  • boolean after (long when) – возвращает true, если время when больше данного;
  • boolean before (long when) – возвращает true, если время when меньше данного;
  • boolean after (Object when) – возвращает true, если when – объект класca Date и времена совпадают.

Еще два метода, сравнивая отсчеты времени, возвращают отрицательное число типа int, если данное время меньше аргумента when; нуль, если времена совпадают; положительное число, если данное время больше аргумента when:

  • int compareTo(Date when);
  • int compareTo(object when) – если when не относится к объектам класса Date, создается исключительная ситуация.

Преобразование миллисекунд, хранящихся в объектах класса Date, в текущее время и дату производится методами класса calendar.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.