Класс Date
- Все реализованные интерфейсы:
-
Serializable,Cloneable,Comparable<Date>
- Непосредственные известные подклассы:
-
Date,Time,Timestamp
public class Date extends Object implements Serializable, Cloneable, Comparable<Date>
Date представляет собой конкретный момент времени с точностью до миллисекунды. До JDK 1.1, класс Date имел две дополнительные функции. Он позволял интерпретировать даты как значения года, месяца, дня, часа, минуты и секунды. Он также позволял форматировать и анализировать строковые представления дат. К сожалению, API этих функций не был пригоден для локализации. Начиная с JDK 1.1, для преобразования между датами и частями времени необходимо использовать класс Calendar, а для форматирования и анализа строк дат — класс DateFormat. Соответствующие методы в Date устарели.
Хотя класс Date предназначен для отражения координированного всемирного времени (UTC), он может не делать этого точно, в зависимости от среды хоста Java Virtual Machine. Почти все современные операционные системы предполагают, что 1 день = 24 × 60 × 60 = 86400 секунд во всех случаях. Однако в UTC примерно раз в год или два появляется дополнительная секунда, называемая «високосной секундой». Високосная секунда всегда добавляется как последняя секунда дня и всегда в 31 декабря или 30 июня. Например, последняя минута 1995 года длилась 61 секунду благодаря добавлению високосной секунды. Большинство компьютерных часов недостаточно точны, чтобы отразить различие високосных секунд.
Некоторые компьютерные стандарты определены в терминах среднего гринвичского времени (GMT), которое эквивалентно всемирному времени (UT). GMT — «гражданское» название стандарта; UT — «научное» название того же стандарта. Различие между UTC и UT заключается в том, что UTC основано на атомных часах, а UT — на астрономических наблюдениях, что для всех практических целей — незаметное различие. Поскольку вращение Земли не является равномерным (оно замедляется и ускоряется сложными способами), UT не всегда протекает равномерно. Високосные секунды вводятся в UTC по мере необходимости, чтобы поддерживать UTC в пределах 0,9 секунды от UT1, который представляет собой версию UT с применёнными определёнными поправками. Существуют и другие системы времени и дат; например, шкала времени, используемая спутниковой глобальной системой позиционирования (GPS), синхронизирована с UTC, но не корректируется на високосные секунды. Интересным источником дополнительной информации являются Морская обсерватория США (USNO):
https://www.usno.navy.mil/USNO
и материал о «Система времени» по адресу:
https://www.usno.navy.mil/USNO/time/master-clock/systems-of-time
в котором описаны различные системы времени, включая UT, UT1 и UTC.
Во всех методах класса Date, принимающих или возвращающих значения года, месяца, даты, часов, минут и секунд, используются следующие представления:
- Год y представлен целым числом y
- 1900. - Месяц представлен целым числом от 0 до 11; 0 — январь, 1 — февраль и так далее; таким образом, 11 — декабрь.
- Дата (день месяца) представлена целым числом от 1 до 31 в обычном порядке.
- Часы представлены целым числом от 0 до 23. Таким образом, час с полуночи до 1 часа утра — час 0, а час с полудня до 1 часа дня — час 12.
- Минуты представлены целым числом от 0 до 59 в обычном порядке.
- Секунды представлены целым числом от 0 до 61; значения 60 и 61 встречаются только для високосных секунд и даже тогда только в реализациях Java, которые действительно отслеживают високосные секунды правильно. Ввиду того, как в настоящее время вводятся високосные секунды, крайне маловероятно, что две високосные секунды произойдут в одной минуте, но данное описание следует соглашениям о датах и времени для ISO C.
Во всех случаях аргументы, заданные методам для этих целей, не обязательно должны входить в указанные диапазоны; например, дата может быть задана как 32 января и интерпретируется как 1 февраля.
- С момента:
- 1.0
- См. также:
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
Date() |
Выделяет объект Date и инициализирует его так, чтобы он представлял время его выделения, измеренное с точностью до миллисекунды. |
Date |
Устарело. |
Date |
Устарело. С версии JDK 1.1 заменено на Calendar.set(year + 1900, month, date, hrs, min) или GregorianCalendar(year + 1900, month, date, hrs, min). |
Date |
Устарело. С версии JDK 1.1 заменено на Calendar.set(year + 1900, month, date, hrs, min, sec) или GregorianCalendar(year + 1900, month, date, hrs, min, sec). |
Date |
Выделяет объект Date и инициализирует его так, чтобы он представлял указанное количество миллисекунд, прошедших с момента стандартного базового времени, известного как «эпоха», а именно 1 января 1970 года в 00:00:00 по Гринвичу. |
Date |
Устарело. С версии JDK 1.1 заменено на DateFormat.parse(String s). |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
after |
Проверяет, является ли эта дата после указанной даты. |
boolean |
before |
Проверяет, является ли эта дата до указанной даты. |
Object |
clone() |
Возвращает копию этого объекта. |
int |
compareTo |
Сравнивает две даты для упорядочивания. |
boolean |
equals |
Сравнивает две даты на равенство. |
static Date |
from |
Получает экземпляр Date из объекта Instant. |
int |
getDate() |
Устарело. С версии JDK 1.1 заменено на Calendar.get(Calendar.DAY_OF_MONTH). |
int |
getDay() |
Устарело. С версии JDK 1.1 заменено на Calendar.get(Calendar.DAY_OF_WEEK). |
int |
getHours() |
Устарело. С версии JDK 1.1 заменено на Calendar.get(Calendar.HOUR_OF_DAY). |
int |
getMinutes() |
Устарело. С версии JDK 1.1 заменено на Calendar.get(Calendar.MINUTE). |
int |
getMonth() |
Устарело. С версии JDK 1.1 заменено на Calendar.get(Calendar.MONTH). |
int |
getSeconds() |
Устарело. С версии JDK 1.1 заменено на Calendar.get(Calendar.SECOND). |
long |
getTime() |
Возвращает количество миллисекунд с 1 января 1970 года 00:00:00 по Гринвичу, представленное этим объектом Date. |
int |
getTimezoneOffset() |
Устарело. С версии JDK 1.1 заменено на -(Calendar.get(Calendar.ZONE_OFFSET) +
Calendar.get(Calendar.DST_OFFSET)) / (60 * 1000). |
int |
getYear() |
Устарело. С версии JDK 1.1 заменено на Calendar.get(Calendar.YEAR) - 1900. |
int |
hashCode() |
Возвращает хеш-код для этого объекта. |
static long |
parse |
Устарело. С версии JDK 1.1 заменено на DateFormat.parse(String s). |
void |
setDate |
Устарело. С версии JDK 1.1 заменено на Calendar.set(Calendar.DAY_OF_MONTH, int date). |
void |
setHours |
Устарело. С версии JDK 1.1 заменено на Calendar.set(Calendar.HOUR_OF_DAY, int hours). |
void |
setMinutes |
Устарело. С версии JDK 1.1 заменено на Calendar.set(Calendar.MINUTE, int minutes). |
void |
setMonth |
Устарело. С версии JDK 1.1 заменено на Calendar.set(Calendar.MONTH, int month). |
void |
setSeconds |
Устарело. С версии JDK 1.1 заменено на Calendar.set(Calendar.SECOND, int seconds). |
void |
setTime |
Устанавливает этот объект Date так, чтобы он представлял точку во времени, которая является time миллисекундами после 1 января 1970 года 00:00:00 по Гринвичу. |
void |
setYear |
Устарело. С версии JDK 1.1 заменено на Calendar.set(Calendar.YEAR, year + 1900). |
String |
toGMTString() |
Устарело. С версии JDK 1.1 заменено на DateFormat.format(Date date), используя GMT TimeZone. |
Instant |
toInstant() |
Преобразует этот объект Date в Instant. |
String |
toLocaleString() |
Устарело. С версии JDK 1.1 заменено на DateFormat.format(Date date). |
String |
toString() |
Преобразует этот объект Date в String в формате: |
static long |
UTC |
Устарело. С версии JDK 1.1 заменено на Calendar.set(year + 1900, month, date, hrs, min, sec) или GregorianCalendar(year + 1900, month, date, hrs, min, sec), используя UTC TimeZone, за которым следует Calendar.getTime().getTime(). |
Подробное описание конструкторов
Date
public Date()
Date и инициализирует его так, чтобы он представлял время его выделения, измеренное с точностью до миллисекунды.- См. также:
Date
public Date(long date)
Date и инициализирует его для представления указанного количества миллисекунд, прошедших с момента стандартного базового времени, известного как «эпоха», а именно 1 января 1970 года, 00:00:00 GMT.- Параметры:
-
date- миллисекунды, прошедшие с 1 января 1970 года, 00:00:00 GMT. - См. также:
Date
@Deprecated public Date(int year, int month, int date)
Calendar.set(year + 1900, month, date) или GregorianCalendar(year + 1900, month, date). Date и инициализирует его так, чтобы он представлял полночь по местному времени в начале дня, указанного аргументами year, month, и date. - Параметры:
-
year- год минус 1900. -
month- месяц от 0 до 11. -
date- день месяца от 1 до 31. - См. также:
Date
@Deprecated public Date(int year, int month, int date, int hrs, int min)
Calendar.set(year + 1900, month, date, hrs, min) или GregorianCalendar(year + 1900, month, date, hrs, min). Date и инициализирует его так, чтобы он представлял момент в начале минуты, указанный аргументами year, month, date, hrs, и min, в часовом поясе по умолчанию.- Параметры:
-
year- год минус 1900. -
month- месяц от 0 до 11. -
date- день месяца от 1 до 31. -
hrs- часы от 0 до 23. -
min- минуты от 0 до 59. - См. также:
Date
@Deprecated public Date(int year, int month, int date, int hrs, int min, int sec)
Calendar.set(year + 1900, month, date, hrs, min, sec) или GregorianCalendar(year + 1900, month, date, hrs, min, sec). Date и инициализирует его так, чтобы он представлял момент в начале секунды, указанный аргументами year, month, date, hrs, min, и sec, в часовом поясе по умолчанию.- Параметры:
-
year- год минус 1900. -
month- месяц от 0 до 11. -
date- день месяца от 1 до 31. -
hrs- часы от 0 до 23. -
min- минуты от 0 до 59. -
sec- секунды от 0 до 59. - См. также:
Date
@Deprecated public Date(String s)
DateFormat.parse(String s).Date и инициализирует его так, чтобы он представлял дату и время, указанные строкой s, интерпретируемой так же, как методом parse(java.lang.String).- Параметры:
-
s- строковое представление даты. - Исключения:
-
IllegalArgumentException- еслиsне может быть интерпретировано как представление даты и времени. - См. также:
Подробное описание методов
clone
public Object clone()
- Переопределяет:
-
cloneв классеObject - Возвращает:
- клонированный экземпляр.
- См. также:
UTC
@Deprecated public static long UTC(int year, int month, int date, int hrs, int min, int sec)
Calendar.set(year + 1900, month, date, hrs, min, sec) или GregorianCalendar(year + 1900, month, date, hrs, min, sec), используя UTC TimeZone, далее Calendar.getTime().getTime().Date с шестью аргументами, за исключением того, что аргументы интерпретируются относительно UTC, а не местного часового пояса. Указанное время возвращается как расстояние, измеренное в миллисекундах, от этого времени до эпохи (00:00:00 GMT 1 января 1970 года).- Параметры:
-
year- год минус 1900. -
month- месяц от 0 до 11. -
date- день месяца от 1 до 31. -
hrs- часы от 0 до 23. -
min- минуты от 0 до 59. -
sec- секунды от 0 до 59. - Возвращает:
- количество миллисекунд с 1 января 1970 года, 00:00:00 GMT для даты и времени, указанных аргументами.
- См. также:
parse
@Deprecated public static long parse(String s)
DateFormat.parse(String s).s как представление даты и времени. Если попытка успешна, возвращается время, представленное в виде разницы в миллисекундах от эпохи (00:00:00 GMT 1 января 1970 года). Если попытка терпит неудачу, выбрасывается IllegalArgumentException. Принимает много синтаксисов; в частности, распознаёт стандартный синтаксис даты IETF: "Sat, 12 Aug 1995 13:30:00 GMT". Также понимает сокращения часовых поясов континентальной части США, но для общего использования следует использовать смещение часового пояса: "Sat, 12 Aug 1995 13:30:00 GMT+0430" (4 часа, 30 минут к западу от Гринвича). Если часовой пояс не указан, предполагается локальный часовой пояс. GMT и UTC считаются эквивалентными.
Строка s обрабатывается слева направо, в поисках интересующих данных. Любой материал в s внутри символов ASCII скобок ( и ) игнорируется. Скобки могут быть вложенными. В противном случае, единственными разрешенными символами внутри s являются следующие символы ASCII:
и пробелы.abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789,+-:/
Последовательность десятичных цифр обрабатывается как десятичное число:
- Если число предваряется
+или-и год уже распознан, то число представляет смещение часового пояса. Если число меньше 24, это смещение в часах. В противном случае, это смещение в минутах, выраженное в формате 24-часового времени без знаков препинания. Предшествующий-означает смещение к западу. Смещения часовых поясов всегда относительно UTC (Гринвич). Например,-5в строке означает "пять часов к западу от Гринвича", а+0430— "четыре часа и тридцать минут к востоку от Гринвича". Допускается избыточное указаниеGMT,UT, илиUTC— например,GMT-5илиutc+0430. - Число рассматривается как номер года, если выполняется одно из следующих условий:
- Число равно или больше 70 и за ним следует пробел, запятая, слэш или конец строки
- Число меньше 70, и месяц и день месяца уже распознаны
SimpleDateFormat. - Если за числом следует двоеточие, оно рассматривается как час, если час ещё не распознан, в противном случае — как минута.
- Если за числом следует слэш, оно рассматривается как месяц (он уменьшается на 1, чтобы получить число в диапазоне
0по11), если месяц уже распознан, то рассматривается как день месяца. - Если за числом следует пробел, запятая, тире или конец строки, то если час распознан, но не минута, он рассматривается как минута; в противном случае, если минута распознана, но не секунда, он рассматривается как секунда; в противном случае — как день месяца.
Последовательность букв рассматривается как слово и обрабатывается следующим образом:
- Слово, соответствующее
AM, игнорируется (но разбор терпит неудачу, если не распознан час или он меньше1или больше12). - Слово, соответствующее
PM, добавляет12к часу (но разбор терпит неудачу, если не распознан час или он меньше1или больше12). - Любое слово, соответствующее любому префиксу
SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, илиSATURDAY, игнорируется. Например,sat, Friday, TUE, иThursигнорируются. - В противном случае, любое слово, соответствующее любому префиксу
JANUARY, FEBRUARY, MARCH, APRIL, MAY, JUNE, JULY, AUGUST, SEPTEMBER, OCTOBER, NOVEMBER, илиDECEMBER, игнорируется, и учитываются в данном порядке, распознаётся как указание месяца и преобразуется в число (0по11). Например,aug, Sept, april, иNOVраспознаются как месяцы. Так же распознаётсяMa, которое распознаётся какMARCH, а не какMAY. - Любое слово, соответствующее
GMT, UT, илиUTC, рассматривается как указание UTC. - Любое слово, соответствующее
EST, CST, MST, илиPST, распознаётся как указание часового пояса в Северной Америке, который на пять, шесть, семь или восемь часов западнее Гринвича соответственно. Любое слово, соответствующееEDT, CDT, MDT, илиPDT, распознаётся как указание того же часового пояса соответственно, в период летнего времени.
После сканирования всей строки s, она преобразуется в результат времени двумя способами. Если был распознан часовой пояс или смещение часового пояса, то год, месяц, день месяца, час, минута и секунда интерпретируются в UTC, а затем применяется смещение часового пояса. В противном случае год, месяц, день месяца, час, минута и секунда интерпретируются в локальном часовом поясе.
- Параметры:
-
s— строка, которая должна быть проанализирована как дата. - Возвращает:
- количество миллисекунд с 1 января 1970 года, 00:00:00 GMT, представленных строкой-аргументом.
- Исключения:
-
IllegalArgumentException— еслиsне может быть интерпретировано как представление даты и времени. - См. также:
getYear
@Deprecated public int getYear()
Calendar.get(Calendar.YEAR) - 1900.Date, как интерпретируется в локальном часовом поясе.- Возвращает:
- год, представленный этой датой, минус 1900.
- См. также:
setYear
@Deprecated public void setYear(int year)
Calendar.set(Calendar.YEAR, year + 1900).Date в указанное значение плюс 1900. Этот объект Date изменяется таким образом, что он представляет момент времени в указанном году, при этом месяц, день, час, минута и секунда остаются такими же, как и раньше, интерпретируемые в локальном часовом поясе. (Конечно, если дата была 29 февраля, например, и год устанавливается на невисокосный год, то новая дата будет обрабатываться так, как будто она 1 марта.)- Параметры:
-
year- значение года. - См. также:
getMonth
@Deprecated public int getMonth()
Calendar.get(Calendar.MONTH).Date. Возвращаемое значение находится в диапазоне 0 по 11, при этом значение 0 соответствует январю.- Возвращает:
- месяц, представленный этой датой.
- См. также:
setMonth
@Deprecated public void setMonth(int month)
Calendar.set(Calendar.MONTH, int month).Date изменяется таким образом, что он представляет момент времени в указанном месяце, при этом год, день, час, минута и секунда остаются такими же, как и раньше, как интерпретируется в локальном часовом поясе. Если дата была 31 октября, например, а месяц устанавливается на июнь, то новая дата будет обрабатываться так, как будто она 1 июля, потому что в июне только 30 дней.- Параметры:
-
month- значение месяца от 0 до 11. - См. также:
getDate
@Deprecated public int getDate()
Calendar.get(Calendar.DAY_OF_MONTH).Date. Возвращаемое значение находится в диапазоне 1 по 31, представляющее день месяца, содержащий или начинающийся с момента времени, представленного этим объектом Date, как интерпретируется в локальном часовом поясе.- Возвращает:
- день месяца, представленный этой датой.
- См. также:
setDate
@Deprecated public void setDate(int date)
Calendar.set(Calendar.DAY_OF_MONTH, int date).Date в указанное значение. Этот объект Date изменяется таким образом, что он представляет момент времени в указанном дне месяца, с годом, месяцем, часом, минутой и секундой, такими же, как и прежде, как интерпретируется в часовом поясе по умолчанию. Например, если дата была 30 апреля, а дата устанавливается на 31, то она будет рассматриваться так, как если бы она была 1 мая, потому что в апреле только 30 дней.- Parameters:
-
date- значение числа месяца между 1 и 31. - См. также:
getDay
@Deprecated public int getDay()
Calendar.get(Calendar.DAY_OF_WEEK).0 = воскресенье, 1 = понедельник, 2 = вторник, 3 = среда, 4 = четверг, 5 = пятница, 6 = суббота) представляет день недели, содержащий или начинающийся с момента во времени, представленного этим объектом Date , как интерпретируется в часовом поясе по умолчанию.- Returns:
- день недели, представленный этой датой.
- См. также:
getHours
@Deprecated public int getHours()
Calendar.get(Calendar.HOUR_OF_DAY).Date . Возвращаемое значение — число (0 до 23) , представляющее час в течение дня, содержащий или начинающийся с момента времени, представленного этим объектом Date , как интерпретируется в часовом поясе по умолчанию.- Returns:
- час, представленный этой датой.
- См. также:
setHours
@Deprecated public void setHours(int hours)
Calendar.set(Calendar.HOUR_OF_DAY, int hours).Date в указанное значение. Этот объект Date изменяется таким образом, что он представляет момент времени в указанный час дня, при этом год, месяц, число, минута и секунда остаются такими же, как и прежде, как интерпретируется в часовом поясе по умолчанию.- Parameters:
-
hours- значение часа. - См. также:
getMinutes
@Deprecated public int getMinutes()
Calendar.get(Calendar.MINUTE).0 и 59.- Returns:
- количество минут, прошедших после часа, представленного этой датой.
- См. также:
setMinutes
@Deprecated public void setMinutes(int minutes)
Calendar.set(Calendar.MINUTE, int minutes).Date в указанное значение. Этот объект Date изменяется таким образом, что он представляет момент времени в указанную минуту часа, при этом год, месяц, число, час и секунда остаются такими же, как и прежде, как интерпретируется в часовом поясе по умолчанию.- Parameters:
-
minutes- значение минут. - См. также:
getSeconds
@Deprecated public int getSeconds()
Calendar.get(Calendar.SECOND).0 и 61 . Значения 60 и 61 могут встречаться только на тех виртуальных машинах Java, которые учитывают високосные секунды.- Returns:
- количество секунд, прошедших после минуты, представленной этой датой.
- См. также:
setSeconds
@Deprecated public void setSeconds(int seconds)
Calendar.set(Calendar.SECOND, int seconds).Date в указанное значение. Этот объект Date изменяется таким образом, что он представляет момент времени в указанную секунду минуты, при этом год, месяц, число, час и минута остаются такими же, как и прежде, как интерпретируется в часовом поясе по умолчанию.- Parameters:
-
seconds- значение секунд. - См. также:
getTime
public long getTime()
Date .- Returns:
- количество миллисекунд, прошедших с 1 января 1970 года, 00:00:00 GMT, представленное этой датой.
setTime
public void setTime(long time)
Date , чтобы представить момент времени, который time миллисекунд после 1 января 1970 года 00:00:00 GMT.- Parameters:
-
time- количество миллисекунд.
before
public boolean before(Date when)
- Parameters:
-
when- дата. - Returns:
-
trueтогда и только тогда, когда момент времени, представленный этим объектомDate, строго раньше момента, представленногоwhen;falseв противном случае. - Throws:
-
NullPointerException- еслиwhenравно null.
after
public boolean after(Date when)
- Parameters:
-
when- дата. - Returns:
-
trueтогда и только тогда, когда момент, представленный этим объектомDate, строго позже момента, представленногоwhen;falseв противном случае. - Throws:
-
NullPointerException- еслиwhenравно null.
equals
public boolean equals(Object obj)
true тогда и только тогда, когда аргумент не null и является объектом типа Date , который представляет тот же момент времени, с точностью до миллисекунды, что и этот объект. Таким образом, два объекта Date равны тогда и только тогда, когда метод getTime возвращает то же значение long для обоих.
- Overrides:
-
equalsв классеObject - Parameters:
-
obj- объект для сравнения. - Returns:
-
true, если объекты одинаковые;falseв противном случае. - См. также:
compareTo
public int compareTo(Date anotherDate)
- Specified by:
-
compareToв интерфейсеComparable<Date> - Parameters:
-
anotherDate- сравниваемаяDate. - Returns:
- значение
0, если аргумент Date равен этой Date; значение меньше0, если эта Date предшествует аргументу Date; и значение больше0, если эта Date следует за аргументом Date. - Throws:
-
NullPointerException- еслиanotherDateравно null. - Since:
- 1.2
hashCode
public int hashCode()
long , возвращаемого методом getTime(). То есть, хеш-код — это значение выражения: (int)(this.getTime()^(this.getTime() >>> 32))
- Overrides:
-
hashCodeв классеObject - Returns:
- хеш-код для этого объекта.
- См. также:
toString
public String toString()
Date объект в строку формата: где:dow mon dd hh:mm:ss zzz yyyy
-
dow— день недели (Sun, Mon, Tue, Wed, Thu, Fri, Sat). -
mon— месяц (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec). -
dd— число месяца (01по31включительно), как двузначное число. -
hh— час (00по23включительно), как двузначное число. -
mm— минута (00по59включительно), как двузначное число. -
ss— секунда (00по61включительно), как двузначное число. -
zzz— часовой пояс (и может отражать летнее время). Стандартные сокращения часовых поясов включают те, которые распознаются методомparse. Если информация о часовом поясе недоступна, тоzzzпуста — то есть состоит из нулевых символов. -
yyyy— год, как четырёхзначное число.
- Overrides:
-
toStringв классеObject - Возвращает:
- строковое представление этой даты.
- См. также:
toLocaleString
@Deprecated public String toLocaleString()
DateFormat.format(Date date).Date объекта в формате, зависящем от реализации. Цель состоит в том, чтобы форма была понятна пользователю Java-приложения, где бы оно ни работало. Цель сравнима с форматом "%c", поддерживаемым функцией strftime() ISO C.- Возвращает:
- строковое представление этой даты, используя соглашения локали.
- См. также:
toGMTString
@Deprecated public String toGMTString()
DateFormat.format(Date date), используя GMT TimeZone.Date объекта в формате: где:d mon yyyy hh:mm:ss GMT
-
d — число месяца (
1по31включительно), как одно- или двузначное число. -
mon — месяц (
Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec). - yyyy — год, как четырёхзначное число.
-
hh — час (
00по23включительно), как двузначное число. -
mm — минута (
00по59включительно), как двузначное число. -
ss — секунда (
00по61включительно), как двузначное число. -
GMT — именно ASCII-буквы "
GMT" для обозначения Гринвичского стандартного времени.
Результат не зависит от часового пояса.
- Возвращает:
- строковое представление этой даты, используя интернет-соглашения GMT.
- См. также:
getTimezoneOffset
@Deprecated public int getTimezoneOffset()
-(Calendar.get(Calendar.ZONE_OFFSET) +
Calendar.get(Calendar.DST_OFFSET)) / (60 * 1000).Date объектом. Например, в штате Массачусетс, пять часовых поясов к западу от Гринвича:
потому что 14 февраля 1996 года используется стандартное время (Восточное стандартное время), которое смещено на пять часов от UTC; но:new Date(96, 1, 14).getTimezoneOffset() returns 300
потому что 1 июня 1996 года используется летнее время (Восточное летнее время), которое смещено всего на четыре часа от UTC.new Date(96, 5, 1).getTimezoneOffset() returns 240
Этот метод производит тот же результат, что и если бы он вычислил:
(this.getTime() - UTC(this.getYear(),
this.getMonth(),
this.getDate(),
this.getHours(),
this.getMinutes(),
this.getSeconds())) / (60 * 1000)
- Возвращает:
- смещение часового пояса в минутах для текущего часового пояса.
- См. также:
from
public static Date from(Instant instant)
Date из объекта Instant. Instant использует точность наносекунды, в то время как Date использует точность миллисекунды. Преобразование будет обрезать любые избыточные данные точности так, как будто количество наносекунд подвергалось целочисленному делению на миллион.
Instant может хранить точки на временной шкале дальше в будущее и дальше в прошлое, чем Date. В этом случае этот метод выбросит исключение.
- Параметры:
-
instant- преобразуемый момент времени - Возвращает:
- объект
Date, представляющий ту же точку на временной шкале, что и предоставленный момент времени - Исключения:
-
NullPointerException- еслиinstantравно null. -
IllegalArgumentException- если момент времени слишком большой для представления какDate - С:
- 1.8
toInstant
public Instant toInstant()
Date объект в Instant. Преобразование создаёт Instant, который представляет ту же точку на временной шкале, что и этот Date.
- Возвращает:
- момент времени, представляющий ту же точку на временной шкале, что и этот
Dateобъект - С:
- 1.8
© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Date.html
Calendar.set(year + 1900, month, date)илиGregorianCalendar(year + 1900, month, date).