Класс Calendar
- Все реализованные интерфейсы:
-
Serializable,Cloneable,Comparable<Calendar>
- Прямые известные подклассы:
GregorianCalendar
public abstract class Calendar extends Object implements Serializable, Cloneable, Comparable<Calendar>
Calendar — это абстрактный класс, предоставляющий методы для преобразования конкретного момента времени в набор calendar fields, таких как YEAR, MONTH, DAY_OF_MONTH, HOUR, и так далее, а также для управления календарными полями, например, для получения даты следующей недели. Момент времени можно представить в виде значения в миллисекундах, которое является смещением от эпохи, 1 января 1970 года 00:00:00.000 GMT (григорианский календарь). Класс также предоставляет дополнительные поля и методы для реализации конкретной календарной системы вне пакета. Эти поля и методы определены как protected.
Как и другие классы, чувствительные к локали, Calendar предоставляет метод класса getInstance для получения полезного объекта этого типа. Метод getInstance класса Calendar возвращает объект Calendar, чьи календарные поля инициализированы текущей датой и временем:
Calendar rightNow = Calendar.getInstance();
Объект Calendar может генерировать все значения календарных полей, необходимые для реализации форматирования даты и времени для конкретного языка и стиля календаря (например, японский-григорианский, японский-традиционный). Calendar определяет диапазон значений, возвращаемых определёнными календарными полями, а также их значение. Например, первый месяц календарной системы имеет значение MONTH ==
JANUARY для всех календарей. Другие значения определены конкретным подклассом, например, ERA. Подробные сведения см. в документации по отдельным полям и документации по подклассам.
Получение и установка значений календарных полей
Значения календарных полей можно установить, вызвав методы set. Любые значения полей, установленные в Calendar, не будут интерпретированы до тех пор, пока он не потребуется для расчета своего значения времени (миллисекунды с эпохи) или значений календарных полей. Вызов методов get, getTimeInMillis, getTime, add и roll подразумевает такой расчёт.
Свободное толкование
Calendar имеет два режима интерпретации календарных полей: свободное толкование и строгое толкование. Когда Calendar находится в режиме свободного толкования, он принимает более широкий диапазон значений календарных полей, чем генерирует. Когда Calendar пересчитывает значения календарных полей для возвращения методом get(), все календарные поля нормализуются. Например, GregorianCalendar в режиме свободного толкования интерпретирует MONTH == JANUARY, DAY_OF_MONTH == 32 как 1 февраля.
Когда Calendar находится в режиме строгого толкования, он генерирует исключение, если существует какое-либо противоречие в его календарных полях. Например, GregorianCalendar всегда генерирует значения DAY_OF_MONTH между 1 и длиной месяца. GregorianCalendar в режиме строгого толкования генерирует исключение при расчете времени или значений календарных полей, если установлено какое-либо значение поля, выходящее за пределы диапазона.
Первая неделя
Calendar определяет специфичный для локали семидневную неделю, используя два параметра: первый день недели и минимальное количество дней в первой неделе (от 1 до 7). Эти числа берутся из данных ресурсов локали или из самой локали при создании Calendar. Если заданная локаль содержит расширения Unicode "fw" и/или "rg" расширения локали, первый день недели будет получен в соответствии с этими расширениями. Если указаны оба расширения "fw" и "rg", значение из расширения "fw" имеет приоритет над неявным значением из расширения "rg". Их также можно указать явно с помощью методов для установки их значений. При установке или получении полей WEEK_OF_MONTH или WEEK_OF_YEAR Calendar должен определить первую неделю месяца или года в качестве точки отсчета. Первая неделя месяца или года определяется как самый ранний период в семь дней, начинающийся в getFirstDayOfWeek() и содержащий как минимум getMinimalDaysInFirstWeek() дней того месяца или года. Недели с номерами ..., -1, 0 предшествуют первой неделе; недели с номерами 2, 3,... следуют за ней. Обратите внимание, что нормализованные номера, возвращаемые get(), могут отличаться. Например, конкретный подкласс Calendar может обозначить неделю до первой недели года как неделю n предыдущего года.
Разрешение календарных полей
При вычислении даты и времени по календарным полям может быть недостаточно информации для вычисления (например, только год и месяц без дня месяца) или может быть противоречивая информация (например, вторник, 15 июля 1996 года (григорианский) — 15 июля 1996 года на самом деле понедельник).Calendar будет разрешать значения календарных полей для определения даты и времени следующим образом. Если есть какие-либо конфликты в значениях календарных полей, Calendar отдаёт приоритет календарным полям, которые были установлены более поздно. Ниже приведены стандартные сочетания календарных полей. Будет использовано самое последнее сочетание, определённое по последнему установленному полю.
Для полей времени суток:YEAR + MONTH + DAY_OF_MONTH YEAR + MONTH + WEEK_OF_MONTH + DAY_OF_WEEK YEAR + MONTH + DAY_OF_WEEK_IN_MONTH + DAY_OF_WEEK YEAR + DAY_OF_YEAR YEAR + DAY_OF_WEEK + WEEK_OF_YEAR
HOUR_OF_DAY AM_PM + HOUR
Если какие-либо календарные поля не были установлены в выбранном сочетании полей, Calendar использует их значения по умолчанию. Значение по умолчанию для каждого поля может варьироваться в зависимости от конкретной календарной системы. Например, в GregorianCalendar, значение по умолчанию поля такое же, как и в начале эпохи: т.е., YEAR = 1970, MONTH =
JANUARY, DAY_OF_MONTH = 1, и т. д.
Примечание: Существуют определенные возможные неоднозначности в интерпретации некоторых конкретных моментов времени, которые разрешаются следующим образом:
- 23:59 — последняя минута дня, а 00:00 — первая минута следующего дня. Таким образом, 23:59 31 декабря 1999 г. < 00:00 1 января 2000 г. < 00:01 1 января 2000 г.
- Хотя исторически неточно, полночь также относится к "am", а полдень — к "pm", так что в один и тот же день 12:00 am (полночь) < 12:01 am, и 12:00 pm (полдень) < 12:01 pm
Форматы строк дат или времени не являются частью определения календаря, так как они должны быть изменяемыми или переопределяемыми пользователем во время выполнения. Используйте DateFormat для форматирования дат.
Обработка полей
Календарные поля могут быть изменены с помощью трёх методов:set(), add(), и roll(). set(f, value) изменяет календарное поле f на value. Кроме того, он устанавливает внутреннюю переменную-член, указывающую на то, что календарное поле f было изменено. Хотя календарное поле f изменяется немедленно, значение времени календаря в миллисекундах не пересчитывается до следующего вызова get(), getTime(), getTimeInMillis(), add(), или roll(). Таким образом, многократные вызовы set() не вызывают многократных, нежелательных вычислений. В результате изменения календарного поля с помощью set(), другие календарные поля также могут измениться, в зависимости от календарного поля, значения календарного поля и календарной системы. Кроме того, get(f) не обязательно вернёт значение value, установленное вызовом метода set после пересчёта календарных полей. Конкретные детали определяются конкретным классом календаря.
Пример: Рассмотрим GregorianCalendar первоначально установленный на 31 августа 1999 года. Вызов set(Calendar.MONTH,
Calendar.SEPTEMBER) устанавливает дату на 31 сентября 1999 года. Это временное внутреннее представление, которое разрешается до 1 октября 1999 года, если затем вызывается getTime(). Однако вызов set(Calendar.DAY_OF_MONTH, 30) до вызова getTime() устанавливает дату на 30 сентября 1999 года, так как пересчёт не происходит после вызова set().
add(f, delta) добавляет delta к полю f. Это эквивалентно вызову set(f,
get(f) + delta) с двумя корректировками:
Правило 1 добавления. Значение поля
fпосле вызова минус значение поляfдо вызова составляетdelta, по модулю любого переполнения, произошедшего в полеf. Переполнение происходит, когда значение поля превышает его диапазон, и в результате следующее более крупное поле увеличивается или уменьшается, а значение поля корректируется обратно в его диапазон.Правило 2 добавления. Если ожидается, что более мелкие поля будут неизменными, но это невозможно, так как из-за изменений минимального или максимального значения после изменения поля
fили других ограничений, таких как изменение смещения часового пояса, тогда его значение корректируется как можно ближе к его ожидаемому значению. Более мелкое поле представляет более мелкую единицу времени.HOUR— более мелкое поле, чемDAY_OF_MONTH. Никакая корректировка не вносится для более мелких полей, которые не ожидаются неизменными. Календарная система определяет, какие поля ожидаются неизменными.
Кроме того, в отличие от set(), add() заставляет немедленно пересчитать миллисекунды календаря и все поля.
Пример: Рассмотрим GregorianCalendar первоначально установленный на 31 августа 1999 года. Вызов add(Calendar.MONTH,
13) устанавливает календарь на 30 сентября 2000 года. Правило 1 добавления устанавливает поле MONTH на сентябрь, поскольку добавление 13 месяцев к августу даёт сентябрь следующего года. Поскольку DAY_OF_MONTH не может быть 31 в сентябре в GregorianCalendar, правило 2 добавления устанавливает DAY_OF_MONTH на 30, что является самым близким возможным значением. Несмотря на то, что это более мелкое поле, DAY_OF_WEEK не корректируется правилом 2, так как ожидается, что оно изменится при смене месяца в GregorianCalendar.
roll(f, delta) добавляет delta к полю f без изменения более крупных полей. Это эквивалентно вызову add(f, delta) со следующей корректировкой:
Правило вращения. Более крупные поля остаются неизменными после вызова. Более крупное поле представляет более крупную единицу времени.
DAY_OF_MONTH— более крупное поле, чемHOUR.
Пример: См. GregorianCalendar.roll(int, int).
Модель использования. Для мотивации поведения add() и roll(), рассмотрите компонент пользовательского интерфейса с кнопками увеличения и уменьшения для месяца, дня и года, и с базовым GregorianCalendar. Если интерфейс отображает 31 января 1999 года, и пользователь нажимает кнопку увеличения месяца, что должно отображаться? Если базовое реализация использует set(), она может отобразить 3 марта 1999 года. Лучшим результатом будет 28 февраля 1999 года. Кроме того, если пользователь снова нажмет кнопку увеличения месяца, должно отображаться 31 марта 1999 года, а не 28 марта 1999 года. Сохраняя исходную дату и используя add() или roll(), в зависимости от того, должны ли затрагиваться более крупные поля, пользовательский интерфейс может вести себя так, как интуитивно ожидают большинство пользователей.
- С момента:
- 1.1
- См. также:
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
static class |
Calendar.Builder |
Calendar.Builder используется для создания Calendar из различных параметров даты и времени. |
Краткое описание полей
| Modifier and Type | Field | Description |
|---|---|---|
static final int |
ALL_STYLES |
Спецификатор стиля для getDisplayNames, указывающий имена во всех стилях, такие как «Январь» и «Янв». |
static final int |
AM |
Значение поля AM_PM, указывающее период дня с полуночи до чуть перед полуднем. |
static final int |
AM_PM |
Номер поля для get и set , указывающий, находится ли HOUR до или после полудня. |
static final int |
APRIL |
Значение поля MONTH, указывающее четвёртый месяц года в григорианском и юлианском календарях. |
protected boolean |
areFieldsSet |
Истина, если fields[] синхронизированы со временем, установленным в настоящий момент. |
static final int |
AUGUST |
Значение поля MONTH, указывающее восьмой месяц года в григорианском и юлианском календарях. |
static final int |
DATE |
Номер поля для get и set , указывающий день месяца. |
static final int |
DAY_OF_MONTH |
Номер поля для get и set , указывающий день месяца. |
static final int |
DAY_OF_WEEK |
Номер поля для get и set , указывающий день недели. |
static final int |
DAY_OF_WEEK_IN_MONTH |
Номер поля для get и set , указывающий порядковый номер дня недели в текущем месяце. |
static final int |
DAY_OF_YEAR |
Номер поля для get и set , указывающий номер дня в текущем году. |
static final int |
DECEMBER |
Значение поля MONTH, указывающее двенадцатый месяц года в григорианском и юлианском календарях. |
static final int |
DST_OFFSET |
Номер поля для get и set , указывающий смещение летнего времени в миллисекундах. |
static final int |
ERA |
Номер поля для get и set , указывающий эру, например, до н. э. или н. э. в юлианском календаре. |
static final int |
FEBRUARY |
Значение поля MONTH, указывающее второй месяц года в григорианском и юлианском календарях. |
static final int |
FIELD_COUNT |
Количество различных полей, распознаваемых get и set. |
protected int[] |
fields |
Значения полей календаря для текущего времени в этом календаре. |
static final int |
FRIDAY |
Значение поля DAY_OF_WEEK, указывающее пятницу. |
static final int |
HOUR |
Номер поля для get и set , указывающий час утра или дня. |
static final int |
HOUR_OF_DAY |
Номер поля для get и set , указывающий час дня. |
protected boolean[] |
isSet |
Флаги, которые показывают, установлено ли указанное поле календаря для календаря. |
protected boolean |
isTimeSet |
Истина, если значение time является корректным. |
static final int |
JANUARY |
Значение поля MONTH, указывающее первый месяц года в григорианском и юлианском календарях. |
static final int |
JULY |
Значение поля MONTH, указывающее седьмой месяц года в григорианском и юлианском календарях. |
static final int |
JUNE |
Значение поля MONTH, указывающее шестой месяц года в григорианском и юлианском календарях. |
static final int |
LONG |
|
static final int |
LONG_FORMAT |
Спецификатор стиля для getDisplayName и getDisplayNames, указывающий длинное имя, используемое для форматирования. |
static final int |
LONG_STANDALONE |
Спецификатор стиля для getDisplayName и getDisplayNames, указывающий длинное имя, используемое независимо, например, название месяца в заголовках календаря. |
static final int |
MARCH |
Значение поля MONTH, указывающее третий месяц года в григорианском и юлианском календарях. |
static final int |
MAY |
Значение поля MONTH, указывающее пятый месяц года в григорианском и юлианском календарях. |
static final int |
MILLISECOND |
Номер поля для get и set , указывающий миллисекунды в секунде. |
static final int |
MINUTE |
Номер поля для get и set , указывающий минуты в часе. |
static final int |
MONDAY |
Значение поля DAY_OF_WEEK, указывающее понедельник. |
static final int |
MONTH |
Номер поля для get и set , указывающий месяц. |
static final int |
NARROW_FORMAT |
Спецификатор стиля для getDisplayName и getDisplayNames, указывающий узкое имя, используемое для форматирования. |
static final int |
NARROW_STANDALONE |
Спецификатор стиля для getDisplayName и getDisplayNames, указывающий узкое имя, используемое независимо. |
static final int |
NOVEMBER |
Значение поля MONTH, указывающее одиннадцатый месяц года в григорианском и юлианском календарях. |
static final int |
OCTOBER |
Значение поля MONTH, указывающее десятый месяц года в григорианском и юлианском календарях. |
static final int |
PM |
Значение поля AM_PM, указывающее период дня с полудня до чуть перед полуночью. |
static final int |
SATURDAY |
Значение поля DAY_OF_WEEK, указывающее субботу. |
static final int |
SECOND |
Номер поля для get и set , указывающий секунды в минуте. |
static final int |
SEPTEMBER |
Значение поля MONTH, указывающее девятый месяц года в григорианском и юлианском календарях. |
static final int |
SHORT |
|
static final int |
SHORT_FORMAT |
Спецификатор стиля для getDisplayName и getDisplayNames, указывающий короткое имя, используемое для форматирования. |
static final int |
SHORT_STANDALONE |
Спецификатор стиля для getDisplayName и getDisplayNames, указывающий короткое имя, используемое независимо, например, сокращение месяца в качестве заголовков календаря. |
static final int |
SUNDAY |
Значение поля DAY_OF_WEEK, обозначающее воскресенье. |
static final int |
THURSDAY |
Значение поля DAY_OF_WEEK, обозначающее четверг. |
protected long |
time |
Текущее время этого календаря, выраженное в миллисекундах после 00:00:00 1 января 1970 года по Гринвичу. |
static final int |
TUESDAY |
Значение поля DAY_OF_WEEK, обозначающее вторник. |
static final int |
UNDECIMBER |
Значение поля MONTH, обозначающее тринадцатый месяц года. |
static final int |
WEDNESDAY |
Значение поля DAY_OF_WEEK, обозначающее среду. |
static final int |
WEEK_OF_MONTH |
Номер поля для get и set , обозначающего номер недели в текущем месяце. |
static final int |
WEEK_OF_YEAR |
Номер поля для get и set , обозначающего номер недели в текущем году. |
static final int |
YEAR |
Номер поля для get и set , обозначающего год. |
static final int |
ZONE_OFFSET |
Номер поля для get и set , обозначающего исходное смещение от GMT в миллисекундах. |
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Создает календарь с часовым поясом по умолчанию и локалью по умолчанию FORMAT. |
|
protected |
Создает календарь с указанным часовым поясом и локалью. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
abstract void |
add |
Добавляет или вычитает указанное количество времени к заданному полю календаря, исходя из правил календаря. |
boolean |
after |
Возвращает, представляет ли этот Calendar время после времени, представленного указанным Object. |
boolean |
before |
Возвращает, представляет ли этот Calendar время до времени, представленного указанным Object. |
final void |
clear() |
Устанавливает все значения полей календаря и значение времени (смещение в миллисекундах от эпохи) этого Calendar в неопределённое состояние. |
final void |
clear |
Устанавливает заданное значение поля календаря и значение времени (смещение в миллисекундах от эпохи) этого Calendar в неопределённое состояние. |
Object |
clone() |
Создаёт и возвращает копию этого объекта. |
int |
compareTo |
Сравнивает значения времени (смещения в миллисекундах от эпохи), представленные двумя объектами Calendar. |
protected void |
complete() |
Заполняет любые не заданные поля в полях календаря. |
protected abstract void |
computeFields() |
|
protected abstract void |
computeTime() |
|
boolean |
equals |
Сравнивает этот Calendar с указанным Object. |
int |
get |
Возвращает значение заданного поля календаря. |
int |
getActualMaximum |
Возвращает максимальное значение, которое может иметь указанное поле календаря, с учетом значения времени этого Calendar. |
int |
getActualMinimum |
Возвращает минимальное значение, которое может иметь указанное поле календаря, с учетом значения времени этого Calendar. |
static Set<String> |
getAvailableCalendarTypes() |
Возвращает неизменяемый Set, содержащий все типы календарей, поддерживаемые Calendar в среде выполнения. |
static Locale[] |
getAvailableLocales() |
Возвращает массив всех языковых локалей, для которых методы getInstance этого класса могут возвращать локализованные экземпляры. |
String |
getCalendarType() |
Возвращает тип календаря этого Calendar. |
String |
getDisplayName |
Возвращает строковое представление значения поля календаря field в заданной style и locale. |
Map<String, |
getDisplayNames |
Возвращает Map, содержащий все имена полей календаря field в заданной style и locale и их соответствующие значения. |
int |
getFirstDayOfWeek() |
Возвращает, какой день недели является первым; например, SUNDAY в США, MONDAY во Франции. |
abstract int |
getGreatestMinimum |
Возвращает наибольшее минимальное значение для данного поля календаря этого экземпляра Calendar. |
static Calendar |
getInstance() |
Возвращает календарь, используя по умолчанию часовой пояс и локаль. |
static Calendar |
getInstance |
Возвращает календарь, используя по умолчанию часовой пояс и указанную локаль. |
static Calendar |
getInstance |
Возвращает календарь, используя указанный часовой пояс и локаль по умолчанию. |
static Calendar |
getInstance |
Возвращает календарь с указанным часовым поясом и локалью. |
abstract int |
getLeastMaximum |
Возвращает наименьшее максимальное значение для данного поля календаря этого экземпляра Calendar. |
abstract int |
getMaximum |
Возвращает максимальное значение для данного поля календаря этого экземпляра Calendar. |
int |
getMinimalDaysInFirstWeek() |
Возвращает минимальное количество дней, необходимых в первой неделе года; например, если первая неделя определяется как неделя, содержащая первый день первого месяца года, этот метод возвращает 1. |
abstract int |
getMinimum |
Возвращает минимальное значение для данного поля календаря этого экземпляра Calendar. |
final Date |
getTime() |
Возвращает объект Date, представляющий значение времени (смещение в миллисекундах от эпохи) этого Calendar. |
long |
getTimeInMillis() |
Возвращает значение времени этого календаря в миллисекундах. |
TimeZone |
getTimeZone() |
Возвращает часовой пояс. |
int |
getWeeksInWeekYear() |
Возвращает количество недель в году недели, представленной этим Calendar. |
int |
getWeekYear() |
Возвращает год недели, представленный этим Calendar. |
int |
hashCode() |
Возвращает хэш-код для этого календаря. |
protected final int |
internalGet |
Возвращает значение заданного поля календаря. |
boolean |
isLenient() |
Указывает, должна ли интерпретация даты/времени быть гибкой. |
final boolean |
isSet |
Определяет, имеет ли заданное поле календаря значение, включая случаи, когда значение было установлено внутренними расчётами полей, вызванными вызовом метода get. |
boolean |
isWeekDateSupported() |
Возвращает, поддерживает ли этот Calendar даты недели. |
abstract void |
roll |
Добавляет или вычитает (вверх/вниз) единицу времени в заданном поле времени, не изменяя больших полей. |
void |
roll |
Добавляет указанное (знаковое) количество к указанному полю календаря, не изменяя больших полей. |
void |
set |
Устанавливает заданное поле календаря в заданное значение. |
final void |
set |
Устанавливает значения для полей календаря YEAR, MONTH, и DAY_OF_MONTH. |
final void |
set |
Устанавливает значения для полей календаря YEAR, MONTH, DAY_OF_MONTH, HOUR_OF_DAY, и MINUTE. |
final void |
set |
Устанавливает значения для полей YEAR, MONTH, DAY_OF_MONTH, HOUR_OF_DAY, MINUTE, и SECOND. |
void |
setFirstDayOfWeek |
Устанавливает, какой день недели является первым; например, SUNDAY в США, MONDAY во Франции. |
void |
setLenient |
Указывает, должна ли интерпретация даты/времени быть гибкой. |
void |
setMinimalDaysInFirstWeek |
Устанавливает минимальное количество дней, необходимых в первой неделе года; Например, если первая неделя определяется как неделя, содержащая первый день первого месяца года, вызовите этот метод со значением 1. |
final void |
setTime |
Устанавливает время этого календаря с помощью указанного Date. |
void |
setTimeInMillis |
Устанавливает текущее время этого календаря из заданного значения long. |
void |
setTimeZone |
Устанавливает часовой пояс с заданным значением часового пояса. |
void |
setWeekDate |
Устанавливает дату этого Calendar с помощью указанных спецификаторов даты — номер года недели, номер недели в году и день недели. |
final Instant |
toInstant() |
Преобразует этот объект в Instant. |
String |
toString() |
Возвращает строковое представление этого календаря. |
Подробное описание полей
ERA
public static final int ERA
get и set, указывающий эпоху, например, AD или BC в юлианском календаре. Это значение, специфичное для календаря; см. документацию подкласса.YEAR
public static final int YEAR
get и set, указывающий год. Это значение, специфичное для календаря; см. документацию подкласса.- См. также:
MONTH
public static final int MONTH
get и set, указывающий месяц. Это значение, специфичное для календаря. Первый месяц года в григорианском и юлианском календарях — JANUARY, который равен 0; последний зависит от количества месяцев в году.WEEK_OF_YEAR
public static final int WEEK_OF_YEAR
get и set, указывающий номер недели в текущем году. Первая неделя года, как определено getFirstDayOfWeek() и getMinimalDaysInFirstWeek(), имеет значение 1. Подклассы определяют значение WEEK_OF_YEAR для дней до первой недели года.WEEK_OF_MONTH
public static final int WEEK_OF_MONTH
get и set, указывающий номер недели в текущем месяце. Первая неделя месяца, как определено getFirstDayOfWeek() и getMinimalDaysInFirstWeek(), имеет значение 1. Подклассы определяют значение WEEK_OF_MONTH для дней до первой недели месяца.DATE
public static final int DATE
get и set, указывающий день месяца. Это синоним для DAY_OF_MONTH. Первый день месяца имеет значение 1.- См. также:
DAY_OF_MONTH
public static final int DAY_OF_MONTH
get и set , указывающий день месяца. Это синоним для DATE. Первый день месяца имеет значение 1.- См. также:
DAY_OF_YEAR
public static final int DAY_OF_YEAR
get и set , указывающий порядковый номер дня в текущем году. Первый день года имеет значение 1.- См. также:
DAY_OF_WEEK
public static final int DAY_OF_WEEK
get и set , указывающий день недели. Это поле принимает значения SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, и SATURDAY.DAY_OF_WEEK_IN_MONTH
public static final int DAY_OF_WEEK_IN_MONTH
get и set , указывающий порядковый номер дня недели в текущем месяце. Вместе с полем DAY_OF_WEEK, это однозначно определяет день в месяце. В отличие от WEEK_OF_MONTH и WEEK_OF_YEAR, значение этого поля не зависит от getFirstDayOfWeek() или getMinimalDaysInFirstWeek(). DAY_OF_MONTH 1 по 7 всегда соответствуют DAY_OF_WEEK_IN_MONTH
1; 8 по 14 соответствуют DAY_OF_WEEK_IN_MONTH 2, и так далее. DAY_OF_WEEK_IN_MONTH 0 указывает на неделю до DAY_OF_WEEK_IN_MONTH 1. Отрицательные значения отсчитываются от конца месяца, так что последняя воскресенье месяца указывается как DAY_OF_WEEK = SUNDAY, DAY_OF_WEEK_IN_MONTH = -1. Поскольку отрицательные значения отсчитываются назад, они обычно выстраиваются в месяце по-другому, чем положительные значения. Например, если месяц имеет 31 день, DAY_OF_WEEK_IN_MONTH -1 будет перекрываться DAY_OF_WEEK_IN_MONTH 5 и концом 4.- См. также:
AM_PM
public static final int AM_PM
get и set , указывающий, до или после полудня является HOUR. Например, в 10:04:15.250 вечера AM_PM равно PM.- См. также:
HOUR
public static final int HOUR
get и set , указывающий час утра или дня. HOUR используется для 12-часовых часов (0 - 11). Полдень и полночь представлены 0, а не 12. Например, в 10:04:15.250 вечера HOUR равно 10.- См. также:
HOUR_OF_DAY
public static final int HOUR_OF_DAY
get и set , указывающий час дня. HOUR_OF_DAY используется для 24-часовых часов. Например, в 10:04:15.250 вечера HOUR_OF_DAY равно 22.- См. также:
MINUTE
public static final int MINUTE
get и set , указывающий минуту в часе. Например, в 10:04:15.250 вечера MINUTE равно 4.- См. также:
ВТОРАЯ
public static final int SECOND
get и set , указывающий на секунду в минуте. Например, в 23:04:15.250 поле SECOND равно 15.- См. также:
МИЛЛИСЕКУНДА
public static final int MILLISECOND
get и set , указывающий на миллисекунду в секунде. Например, в 23:04:15.250 поле MILLISECOND равно 250.- См. также:
ВРЕМЕННАЯ_ЗОНА_СМЕЩЕНИЕ
public static final int ZONE_OFFSET
get и set , указывающий на смещение от GMT в миллисекундах. Это поле отражает правильное смещение от GMT для часового пояса этого Calendar , если реализация класса TimeZone поддерживает изменения исторических смещений от GMT.
- См. также:
DST_СМЕЩЕНИЕ
public static final int DST_OFFSET
get и set , указывающий на смещение летнего времени в миллисекундах. Это поле отражает правильное смещение летнего времени для часового пояса этого Calendar , если реализация класса TimeZone поддерживает изменения исторических графиков летнего времени.
- См. также:
КОЛИЧЕСТВО_ПОЛЕЙ
public static final int FIELD_COUNT
get и set. Номера полей варьируются от 0..FIELD_COUNT-1.- См. также:
ВОСКРЕСЕНЬЕ
public static final int SUNDAY
DAY_OF_WEEK, указывающее на воскресенье.- См. также:
ПОНЕДЕЛЬНИК
public static final int MONDAY
DAY_OF_WEEK, указывающее на понедельник.- См. также:
ВТОРНИК
public static final int TUESDAY
DAY_OF_WEEK, указывающее на вторник.- См. также:
СРЕДА
public static final int WEDNESDAY
DAY_OF_WEEK, указывающее на среду.- См. также:
ЧЕТВЕРГ
public static final int THURSDAY
DAY_OF_WEEK, указывающее на четверг.- См. также:
ПЯТНИЦА
public static final int FRIDAY
DAY_OF_WEEK, указывающее на пятницу.- См. также:
СУББОТА
public static final int SATURDAY
DAY_OF_WEEK, указывающее на субботу.- См. также:
ЯНВАРЬ
public static final int JANUARY
MONTH, указывающее на первый месяц года в григорианском и юлианском календарях.- См. также:
ФЕВРАЛЬ
public static final int FEBRUARY
MONTH, указывающее на второй месяц года в григорианском и юлианском календарях.- См. также:
МАРТ
public static final int MARCH
MONTH, указывающее на третий месяц года в григорианском и юлианском календарях.- См. также:
АПРЕЛЬ
public static final int APRIL
MONTH, указывающее на четвёртый месяц года в григорианском и юлианском календарях.- См. также:
МАЙ
public static final int MAY
MONTH, указывающее на пятый месяц года в григорианском и юлианском календарях.- См. также:
ИЮНЬ
public static final int JUNE
MONTH, указывающее на шестой месяц года в григорианском и юлианском календарях.- См. также:
ИЮЛЬ
public static final int JULY
MONTH, указывающее на седьмой месяц года в григорианском и юлианском календарях.- См. также:
АВГУСТ
public static final int AUGUST
MONTH, указывающее на восьмой месяц года в григорианском и юлианском календарях.- См. также:
СЕНТЯБРЬ
public static final int SEPTEMBER
MONTH, указывающее на девятый месяц года в григорианском и юлианском календарях.- См. также:
ОКТЯБРЬ
public static final int OCTOBER
MONTH, указывающее на десятый месяц года в григорианском и юлианском календарях.- См. также:
НОЯБРЬ
public static final int NOVEMBER
MONTH, указывающее на одиннадцатый месяц года в григорианском и юлианском календарях.- См. также:
ДЕКАБРЬ
public static final int DECEMBER
MONTH, указывающее на двенадцатый месяц года в григорианском и юлианском календарях.- См. также:
UNDECIMBER
public static final int UNDECIMBER
MONTH, указывающее на тринадцатый месяц года. Хотя GregorianCalendar не использует это значение, лунные календари используют.- См. также:
AM
public static final int AM
AM_PM, указывающее на период дня с полуночи до полудня.- См. также:
PM
public static final int PM
AM_PM, указывающее на период дня с полудня до полуночи.- См. также:
ALL_STYLES
public static final int ALL_STYLES
getDisplayNames, указывающий на имена во всех стилях, таких как "January" и "Jan".- С версии:
- 1.6
- См. также:
SHORT
public static final int SHORT
- С версии:
- 1.6
- См. также:
LONG
public static final int LONG
- С версии:
- 1.6
- См. также:
NARROW_FORMAT
public static final int NARROW_FORMAT
getDisplayName и getDisplayNames, указывающий на короткое имя, используемое для форматирования. Короткие имена обычно представляют собой односимвольные строки, например, "M" для понедельника.- С версии:
- 1.8
- См. также:
NARROW_STANDALONE
public static final int NARROW_STANDALONE
getDisplayName и getDisplayNames, указывающий на короткое имя, используемое независимо. Короткие имена обычно представляют собой односимвольные строки, например, "M" для понедельника.- С версии:
- 1.8
- См. также:
SHORT_FORMAT
public static final int SHORT_FORMAT
getDisplayName и getDisplayNames, указывающий на короткое имя, используемое для форматирования.- С версии:
- 1.8
- См. также:
LONG_FORMAT
public static final int LONG_FORMAT
getDisplayName и getDisplayNames, указывающий на полное имя, используемое для форматирования.- С версии:
- 1.8
- См. также:
SHORT_STANDALONE
public static final int SHORT_STANDALONE
getDisplayName и getDisplayNames, указывающий на короткое имя, используемое независимо, например, сокращение месяца в заголовках календаря.- С версии:
- 1.8
- См. также:
LONG_STANDALONE
public static final int LONG_STANDALONE
getDisplayName и getDisplayNames, указывающий на полное имя, используемое независимо, например, название месяца в заголовках календаря.- С версии:
- 1.8
- См. также:
fields
protected int[] fields
FIELD_COUNT целых чисел с индексами от ERA до DST_OFFSET.isSet
protected boolean[] isSet
FIELD_COUNT булевых значений с индексами от ERA до DST_OFFSET.time
protected long time
- См. также:
isTimeSet
protected boolean isTimeSet
time действительно. Время становится недействительным при изменении элемента field[].- См. также:
areFieldsSet
protected boolean areFieldsSet
fields[] синхронизированы с текущим установленным временем. Если ложно, то следующая попытка получить значение поля приведет к пересчету всех полей из текущего значения time.Подробное описание конструкторов
Calendar
protected Calendar()
FORMAT.- См. также:
Calendar
protected Calendar(TimeZone zone, Locale aLocale)
- Параметры:
-
zone- используемый часовой пояс -
aLocale- локаль для данных недели
Подробное описание методов
getInstance
public static Calendar getInstance()
Calendar основан на текущем времени в часовом поясе по умолчанию с локалью по умолчанию FORMAT. Если локаль содержит часовой пояс с "tz" расширением Unicode, используется этот часовой пояс.
- Возвращает:
- календарь.
getInstance
public static Calendar getInstance(TimeZone zone)
Calendar основан на текущем времени в заданном часовом поясе с локалью по умолчанию FORMAT.- Параметры:
-
zone- используемый часовой пояс - Возвращает:
- календарь.
getInstance
public static Calendar getInstance(Locale aLocale)
Calendar основан на текущем времени в часовом поясе по умолчанию с заданной локалью. Если локаль содержит часовой пояс с "tz" расширением Unicode, используется этот часовой пояс.
- Параметры:
-
aLocale- локаль для данных о неделе - Возвращает:
- календарь.
getInstance
public static Calendar getInstance(TimeZone zone, Locale aLocale)
Calendar основан на текущем времени в заданном часовом поясе с заданной локалью.- Параметры:
-
zone- используемый часовой пояс -
aLocale- локаль для данных о неделе - Возвращает:
- календарь.
getAvailableLocales
public static Locale[] getAvailableLocales()
Locale равный Locale.US.- Возвращает:
- Массив локалей, для которых локализованные
Calendarэкземпляры доступны.
computeTime
protected abstract void computeTime()
- См. также:
computeFields
protected abstract void computeFields()
time в значения полей календаря в fields[]. Это позволяет вам синхронизировать значения полей календаря с новым временем, установленным для календаря. Время не пересчитывается сначала; для пересчета времени, а затем полей, вызовите метод complete().- См. также:
getTime
public final Date getTime()
Date , представляющий значение времени этого Calendar (смещение в миллисекундах от эпохи).- Возвращает:
- объект
Date, представляющий значение времени. - См. также:
setTime
public final void setTime(Date date)
Date. Примечание: вызов setTime() с Date(Long.MAX_VALUE) или Date(Long.MIN_VALUE) может привести к некорректным значениям полей из get().
- Параметры:
-
date- заданная дата. - Исключения:
-
NullPointerException- еслиdateравноnull - См. также:
getTimeInMillis
public long getTimeInMillis()
- Возвращает:
- текущее время в миллисекундах UTC с момента эпохи.
- См. также:
setTimeInMillis
public void setTimeInMillis(long millis)
- Параметры:
-
millis- новое время в миллисекундах UTC с момента эпохи. - См. также:
get
public int get(int field)
complete(), процесс зависит от системы календаря.- Параметры:
-
field- заданное поле календаря. - Возвращает:
- значение заданного поля календаря.
- Исключения:
-
ArrayIndexOutOfBoundsException- если заданное поле выходит за пределы диапазона (field < 0 || field >= FIELD_COUNT). - См. также:
internalGet
protected final int internalGet(int field)
- Параметры:
-
field- заданное поле календаря. - Возвращает:
- значение заданного поля календаря.
- См. также:
set
public void set(int field, int value)
- Параметры:
-
field- заданное поле календаря. -
value- значение для установки заданного поля календаря. - Исключения:
-
ArrayIndexOutOfBoundsException- если указанное поле выходит за пределы диапазона (field < 0 || field >= FIELD_COUNT). в режиме не допуска. - См. также:
set
public final void set(int year, int month, int date)
YEAR, MONTH, и DAY_OF_MONTH. Предыдущие значения других полей календаря сохраняются. Если этого не нужно, сначала вызовите clear().- Параметры:
-
year- значение, используемое для установки поля календаряYEAR. -
month- значение, используемое для установки поля календаряMONTH. Значение месяца основано на нуле (0-based). Например, 0 для января. -
date- значение, используемое для установки поля календаряDAY_OF_MONTH. - См. также:
set
public final void set(int year, int month, int date, int hourOfDay, int minute)
YEAR, MONTH, DAY_OF_MONTH, HOUR_OF_DAY, и MINUTE. Предыдущие значения других полей сохраняются. Если этого не нужно, сначала вызовите clear().- Параметры:
-
year- значение, используемое для установки поля календаряYEAR. -
month- значение, используемое для установки поля календаряMONTH. Значение месяца основано на нуле (0-based). Например, 0 для января. -
date- значение, используемое для установки поля календаряDAY_OF_MONTH. -
hourOfDay- значение, используемое для установки поля календаряHOUR_OF_DAY. -
minute- значение, используемое для установки поля календаряMINUTE. - См. также:
set
public final void set(int year, int month, int date, int hourOfDay, int minute, int second)
YEAR, MONTH, DAY_OF_MONTH, HOUR_OF_DAY, MINUTE и SECOND. Предыдущие значения других полей сохраняются. Если это нежелательно, сначала вызовите clear().- Параметры:
-
year- значение, используемое для установки поля календаряYEAR. -
month- значение, используемое для установки поля календаряMONTH. Значение месяца начинается с 0. Например, 0 для января. -
date- значение, используемое для установки поля календаряDAY_OF_MONTH. -
hourOfDay- значение, используемое для установки поля календаряHOUR_OF_DAY. -
minute- значение, используемое для установки поля календаряMINUTE. -
second- значение, используемое для установки поля календаряSECOND. - См. также:
clear
public final void clear()
Calendar как неопределённые. Это означает, что isSet() вернёт false для всех полей календаря, и вычисления даты и времени будут обрабатывать поля так, как если бы они никогда не были установлены. Класс реализации Calendar может использовать свои собственные значения полей по умолчанию для вычислений даты/времени. Например, GregorianCalendar использует 1970, если значение поля YEAR неопределено.- См. также:
clear
public final void clear(int field)
Calendar как неопределённые. Это означает, что isSet(field) вернёт false, и вычисления даты и времени будут обрабатывать поле так, как если бы оно никогда не было установлено. Класс реализации Calendar может использовать значение по умолчанию для данного поля для вычислений даты и времени. Поля HOUR_OF_DAY, HOUR и AM_PM обрабатываются независимо, и применяется правило разрешения для времени суток. Очистка одного из полей не сбрасывает значение часа суток этого Calendar. Используйте set(Calendar.HOUR_OF_DAY, 0) для сброса значения часа.
- Параметры:
-
field- поле календаря, которое необходимо очистить. - См. также:
isSet
public final boolean isSet(int field)
get. - Параметры:
-
field- поле календаря для проверки - Возвращает:
-
trueесли для заданного поля календаря установлено значение;falseв противном случае.
getDisplayName
public String getDisplayName(int field, int style, Locale locale)
field в заданной style и locale. Если строковое представление неприменимо, возвращается null. Этот метод вызывает get(field) для получения значения поля календаря field, если строковое представление применимо к заданному полю календаря field. Например, если этот Calendar является GregorianCalendar и его дата — 2005-01-01, то строковое представление поля MONTH будет "January" в длинном стиле в английской локали или "Jan" в коротком стиле. Однако строковое представление для поля DAY_OF_MONTH недоступно, и этот метод вернёт null.
Реализация по умолчанию поддерживает поля календаря, для которых DateFormatSymbols имеет имена в заданной locale.
- Параметры:
-
field- поле календаря, для которого возвращается строковое представление -
style- стиль, применяемый к строковому представлению; один изSHORT_FORMAT(SHORT),SHORT_STANDALONE,LONG_FORMAT(LONG),LONG_STANDALONE,NARROW_FORMATилиNARROW_STANDALONE. -
locale- локаль для строкового представления (любые типы календаря, указанныеlocale, игнорируются) - Возвращает:
- строковое представление заданного
fieldв заданнойstyle, илиnullесли строковое представление неприменимо. - Исключения:
-
IllegalArgumentException- еслиfieldилиstyleневерно, или если этотCalendarне является снисходительным и какие-либо поля календаря имеют недопустимые значения -
NullPointerException- еслиlocaleравно null - С версии:
- 1.6
getDisplayNames
public Map<String,Integer> getDisplayNames(int field, int style, Locale locale)
Map , содержащий все имена поля календаря field в заданной style и locale и их соответствующие значения. Например, если этот Calendar является GregorianCalendar, возвращаемая карта будет содержать "Jan" для JANUARY, "Feb" для FEBRUARY и так далее, в коротком стиле в английской локали. Узкие имена могут быть не уникальными из-за использования одиночных символов, таких как "S" для воскресенья и субботы. В этом случае узкие имена не включаются в возвращаемый Map.
Для определения набора отображаемых имён могут учитываться значения других полей календаря. Например, если этот Calendar является лунно-солнечной системой календаря, и год, заданный полем YEAR, имеет високосный месяц, этот метод вернёт имена месяцев, содержащие имя високосного месяца, а имена месяцев сопоставлены с их значениями, специфичными для года.
Реализация по умолчанию поддерживает отображаемые имена, содержащиеся в DateFormatSymbols. Например, если field равно MONTH, а style равно ALL_STYLES, этот метод возвращает Map, содержащий все строки, возвращаемые методами DateFormatSymbols.getShortMonths() и DateFormatSymbols.getMonths().
- Параметры:
-
field- поле календаря, для которого возвращаются отображаемые имена -
style- стиль, применяемый к строковому представлению; один изSHORT_FORMAT(SHORT),SHORT_STANDALONE,LONG_FORMAT(LONG),LONG_STANDALONE,NARROW_FORMATилиNARROW_STANDALONE -
locale- локаль для отображаемых имён - Возвращает:
Map, содержащий все отображаемые имена вstyleиlocaleи их значения полей, илиnull, если отображаемые имена не определены дляfield- Исключения:
-
IllegalArgumentException- еслиfieldилиstyleневерно, или если этотCalendarне является снисходительным и какие-либо поля календаря имеют недопустимые значения -
NullPointerException- еслиlocaleравно null - С версии:
- 1.6
complete
protected void complete()
computeTime(), если значение времени (смещение в миллисекундах от эпохи) не было вычислено из значений полей календаря. Затем вызывается метод computeFields() для вычисления всех значений полей календаря.getAvailableCalendarTypes
public static Set<String> getAvailableCalendarTypes()
Set, содержащий все типы календарей, поддерживаемые Calendar в среде выполнения. Доступные типы календарей могут использоваться для расширений локали Unicode. Возвращаемый Set содержит как минимум "gregory". Типы календарей не включают псевдонимы, такие как "gregorian" для "gregory". - Возвращает:
- неизменяемый
Set, содержащий все доступные типы календарей - С версии:
- 1.8
- См. также:
getCalendarType
public String getCalendarType()
Calendar. Типы календарей определяются спецификацией Unicode Locale Data Markup Language (LDML). По умолчанию этот метод возвращает имя класса этого экземпляра Calendar. Любые подклассы, реализующие LDML-определенные системы календарей, должны переопределить этот метод, чтобы возвращать соответствующие типы календарей.
- Возвращает:
- определенный LDML тип календаря или имя класса этого экземпляра
Calendar - С:
- 1.8
- См. также:
equals
public boolean equals(Object obj)
Calendar с указанным Object. Результат равен true, если и только если аргумент является объектом Calendar той же системы календарей, представляющим то же значение времени (смещение в миллисекундах от эпохи) при тех же Calendar параметрах, что и этот объект. Calendar параметры — это значения, представленные методами isLenient, getFirstDayOfWeek, getMinimalDaysInFirstWeek и getTimeZone. Если в параметрах этих двух Calendar есть какие-либо различия, этот метод возвращает false.
Используйте метод compareTo для сравнения только значений времени.
- Переопределяет:
-
equalsв классеObject - Параметры:
-
obj- объект для сравнения. - Возвращает:
-
trueесли этот объект равенobj;falseв противном случае. - См. также:
hashCode
public int hashCode()
- Переопределяет:
-
hashCodeв классеObject - Возвращает:
- значение хэш-кода для этого объекта.
- С:
- 1.2
- См. также:
before
public boolean before(Object when)
Calendar времени до времени, представленного указанным Object. Этот метод эквивалентен:
compareTo(when) < 0
если и только если when является экземпляром Calendar. В противном случае метод возвращает false. - Параметры:
-
when-Objectдля сравнения - Возвращает:
-
trueесли время этогоCalendarдо времени, представленногоwhen;falseв противном случае. - См. также:
after
public boolean after(Object when)
Calendar времени после времени, представленного указанным Object. Этот метод эквивалентен:
compareTo(when) > 0
если и только если when является экземпляром Calendar. В противном случае метод возвращает false. - Параметры:
-
when-Objectдля сравнения - Возвращает:
-
trueесли время этогоCalendarпосле времени, представленногоwhen;falseв противном случае. - См. также:
compareTo
public int compareTo(Calendar anotherCalendar)
Calendar. - Определяется:
-
compareToв интерфейсеComparable<Calendar> - Параметры:
-
anotherCalendar-Calendarдля сравнения. - Возвращает:
- значение
0если время, представленное аргументом, равно времени, представленному этимCalendar; значение меньше0, если время этогоCalendarраньше времени, представленного аргументом; и значение больше0, если время этогоCalendarпозже времени, представленного аргументом. - Исключения:
-
NullPointerException- если указанныйCalendarnull. -
IllegalArgumentException- если значение времени указанного объектаCalendarне может быть получено из-за недопустимых значений календаря. - С:
- 1.5
add
public abstract void add(int field, int amount)
add(Calendar.DAY_OF_MONTH, -5).
- Параметры:
-
field- поле календаря. -
amount- количество добавляемого времени. - См. также:
roll
public abstract void roll(int field, boolean up)
roll(Calendar.DATE, true). При перелистывании года или поля Calendar.YEAR, он перелистывает значение года в диапазоне от 1 до значения, возвращаемого вызовом getMaximum(Calendar.YEAR). При перелистывании месяца или поля Calendar.MONTH, другие поля, такие как дата, могут конфликтовать и должны быть изменены. Например, перелистывание месяца по дате 01/31/96 приведет к 02/29/96. При перелистывании часа или поля Calendar.HOUR_OF_DAY, он перелистывает значение часа в диапазоне от 0 до 23, который имеет нулевое значение.
- Параметры:
-
field- поле времени. -
up- указывает, должно ли значение указанного поля времени быть перелистовано вверх или вниз. Используйте true, если перелистывание вверх, false в противном случае. - См. также:
roll
public void roll(int field, int amount)
ПРИМЕЧАНИЕ: Эта реализация по умолчанию для Calendar просто многократно вызывает версию roll(), которая перелистывает на одну единицу. Это не всегда правильно. Например, если поле DAY_OF_MONTH равно 31, перелистывание через февраль оставит его равным 28. Версия GregorianCalendar этой функции решает эту проблему. Другие подклассы также должны предоставить переопределения этой функции, которые делают все правильно.
- Параметры:
-
field- поле календаря. -
amount- количество со знаком для добавления к полюfieldкалендаря. - С:
- 1.2
- См. также:
setTimeZone
public void setTimeZone(TimeZone value)
- Параметры:
-
value- заданный часовой пояс.
getTimeZone
public TimeZone getTimeZone()
- Возвращает:
- объект часового пояса, связанный с этим календарем.
setLenient
public void setLenient(boolean lenient)
- Параметры:
-
lenient-trueесли режим мягкости включить;falseесли его выключить. - См. также:
isLenient
public boolean isLenient()
- Возвращает:
-
trueесли режим интерпретации этого календаря мягкий;falseв противном случае. - См. также:
setFirstDayOfWeek
public void setFirstDayOfWeek(int value)
SUNDAY в США, MONDAY во Франции.- Parameters:
-
value- заданный первый день недели. - See Also:
getFirstDayOfWeek
public int getFirstDayOfWeek()
SUNDAY в США, MONDAY во Франции.- Returns:
- первый день недели.
- See Also:
setMinimalDaysInFirstWeek
public void setMinimalDaysInFirstWeek(int value)
- Parameters:
-
value- заданное минимальное количество дней, необходимых в первой неделе года. - See Also:
getMinimalDaysInFirstWeek
public int getMinimalDaysInFirstWeek()
- Returns:
- минимальное количество дней, необходимых в первой неделе года.
- See Also:
isWeekDateSupported
public boolean isWeekDateSupported()
Calendar даты недель. Реализация по умолчанию этого метода возвращает false.
- Returns:
-
trueесли этотCalendarподдерживает даты недель;falseв противном случае. - Since:
- 1.7
- See Also:
getWeekYear
public int getWeekYear()
Calendar. Год недели синхронизирован с циклом недель. Первый день первой недели — это первый день года недели. Реализация по умолчанию этого метода выбрасывает исключение UnsupportedOperationException.
- Returns:
- год недели этого
Calendar - Throws:
-
UnsupportedOperationException- если какая-либо нумерация годов недель не поддерживается в этомCalendar. - Since:
- 1.7
- See Also:
setWeekDate
public void setWeekDate(int weekYear, int weekOfYear, int dayOfWeek)
Calendar с заданными спецификаторами даты: годом недели, номером недели и днем недели. В отличие от метода set, все значения полей календаря и time вычисляются при возврате.
Если weekOfYear находится вне допустимого диапазона номера недели в weekYear, значения weekYear и
weekOfYear корректируются в режиме мягкого режима, или выбрасывается исключение
IllegalArgumentException в режиме строгого режима.
Реализация по умолчанию этого метода выбрасывает исключение UnsupportedOperationException.
- Parameters:
-
weekYear- год недели -
weekOfYear- номер недели на основеweekYear -
dayOfWeek- значение дня недели: одно из констант для поляDAY_OF_WEEK:SUNDAY, ...,SATURDAY. - Throws:
-
IllegalArgumentException- если какое-либо из заданных спецификаторов даты недействительно или любое из полей календаря несовместимо с заданными спецификаторами даты в строгом режиме -
UnsupportedOperationException- если какая-либо нумерация годов недель не поддерживается в этомCalendar. - Since:
- 1.7
- See Also:
getWeeksInWeekYear
public int getWeeksInWeekYear()
Calendar. Реализация по умолчанию этого метода выбрасывает исключение UnsupportedOperationException.
- Returns:
- количество недель в году недели.
- Throws:
-
UnsupportedOperationException- если какая-либо нумерация годов недель не поддерживается в этомCalendar. - Since:
- 1.7
- See Also:
getMinimum
public abstract int getMinimum(int field)
Calendar. Минимальное значение определяется как наименьшее значение, возвращаемое методом get для любого возможного значения времени. Минимальное значение зависит от параметров системы календаря экземпляра.- Parameters:
-
field- поле календаря. - Returns:
- минимальное значение для заданного поля календаря.
- See Also:
getMaximum
public abstract int getMaximum(int field)
Calendar. Максимальное значение определяется как наибольшее значение, возвращаемое методом get для любого возможного значения времени. Максимальное значение зависит от параметров системы календаря экземпляра.- Parameters:
-
field- поле календаря. - Returns:
- максимальное значение для заданного поля календаря.
- See Also:
getGreatestMinimum
public abstract int getGreatestMinimum(int field)
Calendar. Наибольшее минимальное значение определяется как наибольшее значение, возвращаемое методом getActualMinimum(int) для любого возможного значения времени. Наибольшее минимальное значение зависит от параметров системы календаря экземпляра.- Parameters:
-
field- поле календаря. - Returns:
- наибольшее минимальное значение для заданного поля календаря.
- See Also:
getLeastMaximum
public abstract int getLeastMaximum(int field)
Calendar. Наименьшее максимальное значение определяется как наименьшее значение, возвращаемое методом getActualMaximum(int) для любого возможного значения времени. Наименьшее максимальное значение зависит от параметров системы календаря экземпляра. Например, для системы календаря Григорианский календарь возвращает 28 для поля DAY_OF_MONTH, потому что 28-е число является последним днем самого короткого месяца в этом календаре, февраля в обычном году.- Parameters:
-
field- поле календаря. - Returns:
- наименьшее максимальное значение для заданного поля календаря.
- See Also:
getActualMinimum
public int getActualMinimum(int field)
Calendar. Реализация по умолчанию этого метода использует итеративный алгоритм для определения фактического минимального значения поля календаря. Подклассы должны, при возможности, переопределить его более эффективной реализацией — во многих случаях они могут просто вернуть getMinimum().
- Parameters:
-
field- поле календаря - Returns:
- минимальное значение данного поля календаря для значения времени этого
Calendar - Since:
- 1.2
- See Also:
getActualMaximum
public int getActualMaximum(int field)
Calendar. Например, фактическое максимальное значение поля MONTH составляет 12 в некоторых годах и 13 в других годах в системе календаря иврита. Реализация по умолчанию этого метода использует итеративный алгоритм для определения фактического максимального значения поля календаря. Подклассы должны, при возможности, переопределить его более эффективной реализацией.
- Parameters:
-
field- поле календаря - Returns:
- максимальное значение данного поля календаря для значения времени этого
Calendar - Since:
- 1.2
- See Also:
clone
public Object clone()
- Overrides:
-
cloneв классеObject - Returns:
- копию этого объекта.
- See Also:
toString
public String toString()
null.- Overrides:
-
toStringв классеObject - Returns:
- строковое представление этого календаря.
toInstant
public final Instant toInstant()
Instant. Преобразование создаёт Instant, представляющий ту же точку на временной шкале, что и этот Calendar.
- Returns:
- момент времени, представляющий ту же точку на временной шкале
- Since:
- 1.8
© 1993, 2021, 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/17/docs/api/java.base/java/util/Calendar.html