Spec-Zone .ru
спецификации, руководства, описания, API
|
public abstract class Calendar extends Object implements Serializable, Cloneable, Comparable<Calendar>
Calendar
класс является абстрактным классом, который обеспечивает методы для того, чтобы они преобразовали между определенным моментом вовремя и рядом calendar fields
такой как YEAR
, MONTH
, DAY_OF_MONTH
, HOUR
, и так далее, и для того, чтобы управлять календарными полями, такими как получение даты следующей недели. Момент вовремя может быть представлен значением миллисекунды, которое является смещением от Эпохи, 1 января 1970 0:00:00.000 (Грегорианских) GMT. Класс также обеспечивает дополнительные поля и методы для того, чтобы реализовать конкретную календарную систему вне пакета. Те поля и методы определяются как protected
.
Как другие чувствительные к локали классы, Calendar
обеспечивает метод класса, getInstance
, для того, чтобы получить обычно полезный объект этого типа. Calendar
's getInstance
метод возвращает a Calendar
возразите, чьи календарные поля были инициализированы с текущей датой и время:
Calendar rightNow = Calendar.getInstance();
A Calendar
объект может произвести все календарные значения полей, должен был реализовать разовое датой форматирование для определенного языка и календарного стиля (например, Японско-грегорианский, Японско-традиционный). Calendar
определяет диапазон значений, возвращенных определенными календарными полями, так же как их значением. Например, у первого месяца календарной системы есть значение MONTH == JANUARY
для всех календарей. Другие значения определяются конкретным подклассом, такой как ERA
. См. отдельную полевую документацию и разделите документацию на подклассы для деталей.
Календарные значения полей могут быть установлены, вызывая set
методы. Любые значения полей устанавливаются в a Calendar
не будет интерпретироваться, пока это не должно вычислить свою временную стоимость (миллисекунды от Эпохи) или значения календарных полей. Вызов get
, getTimeInMillis
, getTime
, add
и roll
включает такое вычисление.
Calendar
имеет два режима для того, чтобы интерпретировать календарные поля, снисходительные и неснисходительные. Когда a Calendar
находится в снисходительном режиме, он принимает более широкий диапазон календарных значений полей, чем он производит. Когда a Calendar
повторно вычисляет календарные значения полей для возврата get()
, все календарные поля нормализуются. Например, снисходительное GregorianCalendar
интерпретирует MONTH == JANUARY
, DAY_OF_MONTH == 32
как 1 февраля.
Когда a Calendar
находится в неснисходительном режиме, он выдает исключение, если есть несогласованность в ее календарных полях. Например, a GregorianCalendar
всегда производит DAY_OF_MONTH
значения между 1 и продолжительность месяца. Неснисходительное GregorianCalendar
выдает исключение после вычисления его времени или календарных значений полей, если какое-либо значение поля из диапазона было установлено.
Calendar
определяет специфичную для локали семидневную неделю, используя два параметра: первый день недели и минимальные дни на первой неделе (от 1 до 7). Эти числа берутся от данных ресурсов локали когда a Calendar
создается. Они могут также быть определены явно через методы для того, чтобы установить их значения. Устанавливая или добираясь WEEK_OF_MONTH
или WEEK_OF_YEAR
поля, Calendar
должен определить первую неделю месяца или года как контрольная точка. Первая неделя месяца или года определяется как самый ранний семидневный период, начинающийся на getFirstDayOfWeek()
и содержание, по крайней мере, getMinimalDaysInFirstWeek()
дни того месяца или года. Недели, пронумерованные...,-1, 0, предшествуют первой неделе; недели, пронумерованные 2, 3... следуют за этим. Отметьте что нормализованная нумерация, возвращенная get()
может отличаться. Например, определенное Calendar
подкласс может определять неделю перед неделей 1 из года как неделя n
из предыдущего года.
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
, и т.д..
Отметьте: есть определенные возможные неоднозначности в интерпретации определенных исключительных времен, которые разрешаются следующими способами:
Дата или строки формата времени не являются частью определения календаря, поскольку те должны быть поддающимися изменению или переопределяемыми пользователем во время выполнения. Использовать DateFormat
отформатировать даты.
set()
, add()
, и roll()
.
set(f, value)
календарное поле изменений f
к value
. Кроме того, это устанавливает внутреннюю задействованную переменную, чтобы указать на то календарное поле f
был изменен. Хотя календарное поле f
сразу изменяется, временная стоимость календаря в миллисекундах не повторно вычисляется до следующего звонка get()
, getTime()
, getTimeInMillis()
, add()
, или roll()
делается. Таким образом, множественные вызовы set()
не инициируйте многократные, ненужные вычисления. В результате изменения календарного полевого использования set()
, другие календарные поля могут также измениться, в зависимости от календарного поля, календарного значения поля, и календарной системы. Кроме того, get(f)
не обязательно возвратится value
установленный звонком set
метод после календарных полей был повторно вычислен. Специфические особенности определяются конкретным календарным классом.
Пример: Рассмотрите a 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()
вызывает непосредственное перевычисление миллисекунд календаря и всех полей.
Пример: Рассмотрите a GregorianCalendar
первоначально набор до 31 августа 1999. Вызов add(Calendar.MONTH, 13)
устанавливает календарь до 30 сентября 2000. Добавьте, что правило 1 устанавливает MONTH
поле до сентября, начиная с добавления 13 месяцев до августа дает сентябрь следующего года. С тех пор DAY_OF_MONTH
не может быть 31 в сентябре в a GregorianCalendar
, добавьте, что правило 2 устанавливает DAY_OF_MONTH
к 30, самое близкое значение. Хотя это - меньшее поле, DAY_OF_WEEK
не корректируется правилом 2, так как оно, как ожидают, изменится, когда месяц изменится в a 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()
В зависимости от того, нужно ли на более крупные поля влиять, пользовательский интерфейс может вести себя, как большинство пользователей будет интуитивно ожидать.
System.currentTimeMillis()
, Date
, GregorianCalendar
, TimeZone
, DateFormat
, Сериализированная ФормаМодификатор и Тип | Поле и Описание |
---|---|
static int |
ALL_STYLES
Спецификатор стиля для
getDisplayNames указывая на имена во всех стилях, таких как "январь" и "Ян". |
static int |
AM
Значение
AM_PM поле, указывающее на период дня с полуночи к как раз перед полуднем. |
static int |
AM_PM
Полевое число для
get и set указание, ли HOUR прежде или после полудня. |
static int |
АПРЕЛЬ
Значение
MONTH поле, указывающее на четвертый месяц года в Григорианских и юлианских календарях. |
protected boolean |
areFieldsSet
Истина, если
fields[] находятся в синхронизации с в настоящий момент время набора. |
static int |
АВГУСТ
Значение
MONTH поле, указывающее на восьмой месяц года в Григорианских и юлианских календарях. |
static int |
ДАТА
Полевое число для
get и set указание на день месяца. |
static int |
DAY_OF_MONTH
Полевое число для
get и set указание на день месяца. |
static int |
DAY_OF_WEEK
Полевое число для
get и set указание на день недели. |
static int |
DAY_OF_WEEK_IN_MONTH
Полевое число для
get и set указание на порядковое число дня недели в течение текущего месяца. |
static int |
DAY_OF_YEAR
Полевое число для
get и set указание на дневное число в течение текущего года. |
static int |
ДЕКАБРЬ
Значение
MONTH поле, указывающее на двенадцатый месяц года в Григорианских и юлианских календарях. |
static int |
DST_OFFSET
Полевое число для
get и set указание на переход на летнее время смещается в миллисекундах. |
static int |
ERA
Полевое число для
get и set указывая на эру, например, AD или BC в юлианском календаре. |
static int |
ФЕВРАЛЬ
Значение
MONTH поле, указывающее на второй месяц года в Григорианских и юлианских календарях. |
static int |
FIELD_COUNT
Число отличных полей, распознанных
get и set . |
protected int[] |
поля
Календарные значения полей для в настоящий момент времени набора для этого календаря.
|
static int |
В ПЯТНИЦУ
Значение
DAY_OF_WEEK поле, указывающее в пятницу. |
static int |
ЧАС
Полевое число для
get и set указание на час утра или дня. |
static int |
HOUR_OF_DAY
Полевое число для
get и set указание на час дня. |
protected boolean[] |
isSet
Флаги, которые говорят, устанавливается ли указанное календарное поле для календаря.
|
protected boolean |
isTimeSet
Истина, если тогда значение
time допустимо. |
static int |
ЯНВАРЬ
Значение
MONTH поле, указывающее на первый месяц года в Григорианских и юлианских календарях. |
static int |
ИЮЛЬ
Значение
MONTH поле, указывающее на седьмой месяц года в Григорианских и юлианских календарях. |
static int |
ИЮНЬ
Значение
MONTH поле, указывающее на шестой месяц года в Григорианских и юлианских календарях. |
static int |
ДОЛГО
Спецификатор стиля для
getDisplayName и getDisplayNames указывая на длинное имя, такое как "январь". |
static int |
МАРТ
Значение
MONTH поле, указывающее на третий месяц года в Григорианских и юлианских календарях. |
static int |
МАЙ
Значение
MONTH поле, указывающее на пятый месяц года в Григорианских и юлианских календарях. |
static int |
МИЛЛИСЕКУНДА
Полевое число для
get и set указание на миллисекунду в пределах второго. |
static int |
МИНУТА
Полевое число для
get и set указание на минуту в течение часа. |
static int |
В ПОНЕДЕЛЬНИК
Значение
DAY_OF_WEEK поле, указывающее в понедельник. |
static int |
МЕСЯЦ
Полевое число для
get и set указание на месяц. |
static int |
НОЯБРЬ
Значение
MONTH поле, указывающее на одиннадцатый месяц года в Григорианских и юлианских календарях. |
static int |
ОКТЯБРЬ
Значение
MONTH поле, указывающее на десятый месяц года в Григорианских и юлианских календарях. |
static int |
PM
Значение
AM_PM поле, указывающее на период дня с полудня к как раз перед полуночью. |
static int |
В СУББОТУ
Значение
DAY_OF_WEEK поле, указывающее в субботу. |
static int |
ВТОРОЙ
Полевое число для
get и set указание на второе в течение минуты. |
static int |
СЕНТЯБРЬ
Значение
MONTH поле, указывающее на девятый месяц года в Григорианских и юлианских календарях. |
static int |
КОРОТКИЙ
Спецификатор стиля для
getDisplayName и getDisplayNames указывая на краткое название, такое как "Ян". |
static int |
В ВОСКРЕСЕНЬЕ
Значение
DAY_OF_WEEK поле, указывающее в воскресенье. |
static int |
В ЧЕТВЕРГ
Значение
DAY_OF_WEEK поле, указывающее в четверг. |
protected long |
время
В настоящий момент время набора для этого календаря, выраженного в миллисекундах после 1 января 1970, GMT 0:00:00.
|
static int |
ВО ВТОРНИК
Значение
DAY_OF_WEEK поле, указывающее во вторник. |
static int |
UNDECIMBER
Значение
MONTH поле, указывающее на тринадцатый месяц года. |
static int |
В СРЕДУ
Значение
DAY_OF_WEEK поле, указывающее в среду. |
static int |
WEEK_OF_MONTH
Полевое число для
get и set указание на недельное число в течение текущего месяца. |
static int |
WEEK_OF_YEAR
Полевое число для
get и set указание на недельное число в течение текущего года. |
static int |
ГОД
Полевое число для
get и set указание на год. |
static int |
ZONE_OFFSET
Полевое число для
get и set указание на необработанное смещение от GMT в миллисекундах. |
Модификатор | Конструктор и Описание |
---|---|
protected |
Calendar()
Создает Календарь с часовым поясом по умолчанию и локалью.
|
protected |
Calendar(TimeZone zone, Locale aLocale)
Создает календарь с зоной требуемого времени и локалью.
|
Модификатор и Тип | Метод и Описание |
---|---|
abstract void |
add(int field, int amount)
Добавляет или вычитает указанное количество времени к данному календарному полю, основанному на правилах календаря.
|
boolean |
after(Object when)
Возвраты, ли это
Calendar представляет время после времени, представленного указанным Object . |
boolean |
before(Object when)
Возвраты, ли это
Calendar представляет время перед временем, представленным указанным Object . |
void |
clear()
Наборы все календарные значения полей и временная стоимость (смещение миллисекунды от Эпохи) этого
Calendar неопределенный. |
void |
clear(int field)
Устанавливает данное календарное значение поля и временную стоимость (смещение миллисекунды от Эпохи) этого
Calendar неопределенный. |
Объект |
clone()
Создает и возвращает копию этого объекта.
|
int |
compareTo(Calendar anotherCalendar)
Сравнивает временные стоимости (смещения миллисекунды от Эпохи) представленный два
Calendar объекты. |
protected void |
complete()
Заполняет любые поля сброса в календарных полях.
|
protected abstract void |
computeFields()
|
protected abstract void |
computeTime()
|
boolean |
equals(Object obj)
Сравнивает это
Calendar к указанному Object . |
int |
get(int field)
Возвращает значение данного календарного поля.
|
int |
getActualMaximum(int field)
Возвращает максимальное значение, которое указанное календарное поле могло иметь учитывая временную стоимость этого
Calendar . |
int |
getActualMinimum(int field)
Возвращает минимальное значение, которое указанное календарное поле могло иметь учитывая временную стоимость этого
Calendar . |
static Locale[] |
getAvailableLocales()
Возвращает массив всех локалей для который
getInstance методы этого класса могут возвратить локализованные экземпляры. |
Строка |
getDisplayName(int field, int style, Locale locale)
Возвращает строковое представление календаря
field значение в данном style и locale . |
Map<String,Integer> |
getDisplayNames(int field, int style, Locale locale)
Возвраты a
Map содержа все имена календаря field в данном style и locale и их соответствующие значения полей. |
int |
getFirstDayOfWeek()
Получает, каков первый день недели; например,
SUNDAY в США, MONDAY во Франции. |
abstract int |
getGreatestMinimum(int field)
Возвращает самое высокое минимальное значение для данного календарного поля этого
Calendar экземпляр. |
static Calendar |
getInstance()
Получает календарь, используя часовой пояс по умолчанию и локаль.
|
static Calendar |
getInstance(Locale aLocale)
Получает календарь, используя часовой пояс по умолчанию и определенную локаль.
|
static Calendar |
getInstance(TimeZone zone)
Получает календарь, используя зону требуемого времени и локаль по умолчанию.
|
static Calendar |
getInstance(TimeZone zone, Locale aLocale)
Получает календарь с зоной требуемого времени и локалью.
|
abstract int |
getLeastMaximum(int field)
Возвращает самое низкое максимальное значение для данного календарного поля этого
Calendar экземпляр. |
abstract int |
getMaximum(int field)
Возвращает максимальное значение для данного календарного поля этого
Calendar экземпляр. |
int |
getMinimalDaysInFirstWeek()
Получает, каковы минимальные дни, требуемые на первой неделе года; например, если первая неделя определяется как тот, который содержит первый день первого месяца года, этот метод возвращается 1.
|
abstract int |
getMinimum(int field)
Возвращает минимальное значение для данного календарного поля этого
Calendar экземпляр. |
Дата |
getTime()
Возвраты a
Date объект, представляющий это Calendar 's временная стоимость (смещение миллисекунды от Эпохи"). |
long |
getTimeInMillis()
Возвраты временная стоимость этого Календаря в миллисекундах.
|
TimeZone |
getTimeZone()
Получает часовой пояс.
|
int |
getWeeksInWeekYear()
Возвращает число недель, в недельном году представленных этим
Calendar . |
int |
getWeekYear()
Возвращает недельный год, представленный этим
Calendar . |
int |
hashCode()
Возвращает хэш-код для этого календаря.
|
protected int |
internalGet(int field)
Возвращает значение данного календарного поля.
|
boolean |
isLenient()
Говорит, должна ли интерпретация даты/времени быть снисходительной.
|
boolean |
isSet(int field)
Определяет, есть ли у данного календарного поля набор значений, включая случаи, что значение было установлено внутренними полевыми вычислениями, инициированными a
get вызов метода. |
boolean |
isWeekDateSupported()
Возвраты, ли это
Calendar поддерживает недельные даты. |
abstract void |
roll(int field, boolean up)
Добавляет или вычитает (/вниз) единый блок времени на данном поле времени, не изменяя более крупные поля.
|
void |
roll(int field, int amount)
Добавляет указанное количество (со знаком) к указанному календарному полю, не изменяя более крупные поля.
|
void |
set(int field, int value)
Устанавливает данное календарное поле в данное значение.
|
void |
set(int year, int month, int date)
Устанавливает значения для календарных полей
YEAR , MONTH , и DAY_OF_MONTH . |
void |
set(int year, int month, int date, int hourOfDay, int minute)
Устанавливает значения для календарных полей
YEAR , MONTH , DAY_OF_MONTH , HOUR_OF_DAY , и MINUTE . |
void |
set(int year, int month, int date, int hourOfDay, int minute, int second)
Устанавливает значения для полей
YEAR , MONTH , DAY_OF_MONTH , HOUR , MINUTE , и SECOND . |
void |
setFirstDayOfWeek(int value)
Наборы, каков первый день недели; например,
SUNDAY в США, MONDAY во Франции. |
void |
setLenient(boolean lenient)
Определяет, должна ли интерпретация даты/времени быть снисходительной.
|
void |
setMinimalDaysInFirstWeek(int value)
Наборы, каковы минимальные дни, требуемые на первой неделе года; Например, если первая неделя определяется как тот, который содержит первый день первого месяца года, вызовите этот метод со значением 1.
|
void |
setTime(Date date)
Наборы время этого Календаря с данным
Date . |
void |
setTimeInMillis(long millis)
Наборы текущее время этого Календаря от даваемого долго оценивают.
|
void |
setTimeZone(TimeZone value)
Устанавливает часовой пояс с данным значением часового пояса.
|
void |
setWeekDate(int weekYear, int weekOfYear, int dayOfWeek)
Назначает дату этого
Calendar с данные спецификаторы даты - недельный год, неделя года, и день недели. |
Строка |
toString()
Возвратите строковое представление этого календаря.
|
public static final int ERA
get
и set
указывая на эру, например, AD или BC в юлианском календаре. Это - специфичное для календаря значение; см. документацию подкласса.public static final int YEAR
get
и set
указание на год. Это - специфичное для календаря значение; см. документацию подкласса.public static final int MONTH
get
и set
указание на месяц. Это - специфичное для календаря значение. Первый месяц года в Григорианских и юлианских календарях JANUARY
который является 0; последнее зависит от числа месяцев через год.public static final int WEEK_OF_YEAR
get
и set
указание на недельное число в течение текущего года. Первая неделя года, как определено getFirstDayOfWeek()
и getMinimalDaysInFirstWeek()
, имеет значение 1. Подклассы определяют значение WEEK_OF_YEAR
в течение многих дней перед первой неделей года.public static final int WEEK_OF_MONTH
get
и set
указание на недельное число в течение текущего месяца. Первая неделя месяца, как определено getFirstDayOfWeek()
и getMinimalDaysInFirstWeek()
, имеет значение 1. Подклассы определяют значение WEEK_OF_MONTH
в течение многих дней перед первой неделей месяца.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.DATE
, Постоянные Значения полейpublic static final int DAY_OF_YEAR
get
и set
указание на дневное число в течение текущего года. У первого дня года есть значение 1.public static final int DAY_OF_WEEK
get
и set
указание на день недели. Это поле принимает значения SUNDAY
, MONDAY
, TUESDAY
, WEDNESDAY
, THURSDAY
, FRIDAY
, и SATURDAY
.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
.DAY_OF_WEEK
, WEEK_OF_MONTH
, Постоянные Значения полейpublic static final int AM_PM
get
и set
указание, ли HOUR
прежде или после полудня. Например, в 10:04:15.250 PM AM_PM
PM
.AM
, PM
, HOUR
, Постоянные Значения полейpublic static final int HOUR
get
и set
указание на час утра или дня. HOUR
используется для 12-часовых часов (0 - 11). Полдень и полночь представляются 0, не 12. Например, в 10:04:15.250 PM HOUR
10.AM_PM
, HOUR_OF_DAY
, Постоянные Значения полейpublic static final int HOUR_OF_DAY
get
и set
указание на час дня. HOUR_OF_DAY
используется для 24-часовых часов. Например, в 10:04:15.250 PM HOUR_OF_DAY
22.HOUR
, Постоянные Значения полейpublic static final int MINUTE
get
и set
указание на минуту в течение часа. Например, в 10:04:15.250 PM MINUTE
4.public static final int SECOND
get
и set
указание на второе в течение минуты. Например, в 10:04:15.250 PM SECOND
15.public static final int MILLISECOND
get
и set
указание на миллисекунду в пределах второго. Например, в 10:04:15.250 PM MILLISECOND
250.public static final int ZONE_OFFSET
get
и set
указание на необработанное смещение от GMT в миллисекундах. Это поле отражает корректное значение смещения GMT часового пояса этого Calendar
если TimeZone
подкласс реализации поддерживает исторические изменения смещения GMT.
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
поле, указывающее на двенадцатый месяц года в Григорианских и юлианских календарях.public static final int UNDECIMBER
MONTH
поле, указывающее на тринадцатый месяц года. Хотя GregorianCalendar
не использует это значение, лунные календари делают.public static final int AM
AM_PM
поле, указывающее на период дня с полуночи к как раз перед полуднем.public static final int PM
AM_PM
поле, указывающее на период дня с полудня к как раз перед полуночью.public static final int ALL_STYLES
getDisplayNames
указывая на имена во всех стилях, таких как "январь" и "Ян".SHORT
, LONG
, Постоянные Значения полейpublic static final int SHORT
getDisplayName
и getDisplayNames
указывая на краткое название, такое как "Ян".LONG
, Постоянные Значения полейpublic static final int LONG
getDisplayName
и getDisplayNames
указывая на длинное имя, такое как "январь".SHORT
, Постоянные Значения полейprotected int[] fields
FIELD_COUNT
целые числа, с индексными значениями ERA
через DST_OFFSET
.protected boolean[] isSet
FIELD_COUNT
булевские переменные, с индексными значениями ERA
через DST_OFFSET
.protected long time
isTimeSet
protected boolean isTimeSet
time
допустимо. Время делается недопустимым изменением к элементу field[]
.time
protected boolean areFieldsSet
fields[]
находятся в синхронизации с в настоящий момент время набора. Если ложь, то следующая попытка получить значение поля вызовет перевычисление всех полей от текущей стоимости time
.protected Calendar()
TimeZone.getDefault()
public static Calendar getInstance()
Calendar
возвращенный основано на текущем времени в часовом поясе по умолчанию с локалью по умолчанию.public static Calendar getInstance(TimeZone zone)
Calendar
возвращенный основано на текущем времени в данном часовом поясе с локалью по умолчанию.zone
- часовой пояс, чтобы использоватьpublic static Calendar getInstance(Locale aLocale)
Calendar
возвращенный основано на текущем времени в часовом поясе по умолчанию с данной локалью.aLocale
- локаль для недельных данныхpublic static Calendar getInstance(TimeZone zone, Locale aLocale)
Calendar
возвращенный основано на текущем времени в данном часовом поясе с данной локалью.zone
- часовой пояс, чтобы использоватьaLocale
- локаль для недельных данныхpublic static Locale[] getAvailableLocales()
getInstance
методы этого класса могут возвратить локализованные экземпляры. Массив возвратился, должен содержать, по крайней мере, a Locale
экземпляр, равный Locale.US
.Calendar
экземпляры доступны.protected abstract void computeTime()
fields[]
к временной стоимости миллисекунды time
.complete()
, computeFields()
protected abstract void computeFields()
time
к календарным значениям полей в fields[]
. Это позволяет Вам синхронизировать календарные значения полей с новым временем, которое устанавливается для календаря. Время не повторно вычисляется сначала; повторно вычислить время, тогда поля, вызов complete()
метод.computeTime()
public final Date getTime()
Date
объект, представляющий это Calendar
's временная стоимость (смещение миллисекунды от Эпохи").Date
представление временной стоимости.setTime(Date)
, getTimeInMillis()
public final void setTime(Date date)
Date
. Отметьте: Вызов setTime()
с Date(Long.MAX_VALUE)
или Date(Long.MIN_VALUE)
может привести к неправильным значениям полей от get()
.
date
- данная Дата.getTime()
, setTimeInMillis(long)
public long getTimeInMillis()
getTime()
, setTimeInMillis(long)
public void setTimeInMillis(long millis)
millis
- новое время в миллисекундах UTC от эпохи.setTime(Date)
, getTimeInMillis()
public int get(int field)
complete()
метод, какой процесс является системно-зависимым календарем.field
- данное календарное поле.ArrayIndexOutOfBoundsException
- если указанное поле испытывает недостаток диапазона (field < 0 || field >= FIELD_COUNT
).set(int,int)
, complete()
protected final int internalGet(int field)
field
- данное календарное поле.get(int)
public void set(int field, int value)
field
- данное календарное поле.value
- значение, которое будет установлено для данного календарного поля.ArrayIndexOutOfBoundsException
- если указанное поле испытывает недостаток диапазона (field < 0 || field >= FIELD_COUNT
). в неснисходительном режиме.set(int,int,int)
, set(int,int,int,int,int)
, set(int,int,int,int,int,int)
, get(int)
public final void set(int year, int month, int date)
YEAR
, MONTH
, и DAY_OF_MONTH
. Сохраняются предыдущие значения других календарных полей. Если это не требуется, вызвать clear()
сначала.year
- значение, используемое, чтобы установить YEAR
календарное поле.month
- значение, используемое, чтобы установить MONTH
календарное поле. Значение месяца на основе 0. например, 0 на январь.date
- значение, используемое, чтобы установить DAY_OF_MONTH
календарное поле.set(int,int)
, set(int,int,int,int,int)
, set(int,int,int,int,int,int)
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. например, 0 на январь.date
- значение, используемое, чтобы установить DAY_OF_MONTH
календарное поле.hourOfDay
- значение, используемое, чтобы установить HOUR_OF_DAY
календарное поле.minute
- значение, используемое, чтобы установить MINUTE
календарное поле.set(int,int)
, set(int,int,int)
, set(int,int,int,int,int,int)
public final void set(int year, int month, int date, int hourOfDay, int minute, int second)
YEAR
, MONTH
, DAY_OF_MONTH
, HOUR
, MINUTE
, и SECOND
. Сохраняются предыдущие значения других полей. Если это не требуется, вызвать clear()
сначала.year
- значение, используемое, чтобы установить YEAR
календарное поле.month
- значение, используемое, чтобы установить MONTH
календарное поле. Значение месяца на основе 0. например, 0 на январь.date
- значение, используемое, чтобы установить DAY_OF_MONTH
календарное поле.hourOfDay
- значение, используемое, чтобы установить HOUR_OF_DAY
календарное поле.minute
- значение, используемое, чтобы установить MINUTE
календарное поле.second
- значение, используемое, чтобы установить SECOND
календарное поле.set(int,int)
, set(int,int,int)
, set(int,int,int,int,int)
public final void clear()
Calendar
неопределенный. Это означает это isSet()
возвратится false
для всех календарных полей, и даты и вычислений времени обработает поля, как будто они никогда не устанавливались. A Calendar
класс реализации может использовать свои определенные значения полей по умолчанию для вычислений даты/времени. Например, GregorianCalendar
использование 1970, если YEAR
значение поля неопределено.clear(int)
public final void clear(int field)
Calendar
неопределенный. Это означает это isSet(field)
возвратится false
, и дата и вычисления времени обработают поле, как будто это никогда не устанавливалось. A Calendar
класс реализации может использовать определенное значение по умолчанию поля для вычислений времени и даты. HOUR_OF_DAY
, HOUR
и AM_PM
поля обрабатываются независимо и, правило разрешения для времени суток применяется. Очистка одного из полей не сбрасывает час дневного значения этого Calendar
. Использовать set(Calendar.HOUR_OF_DAY, 0)
сбрасывать значение часа.
field
- календарное поле, которое будет очищено.clear()
public final boolean isSet(int field)
get
вызов метода.true
если у данного календарного поля есть набор значений; false
иначе.public String getDisplayName(int field, int style, Locale locale)
field
значение в данном style
и locale
. Если никакое строковое представление не применимо, null
возвращается. Это вызовы метода get(field)
получить календарь field
оцените, если строковое представление применимо к данному календарю field
. Например, если это Calendar
a GregorianCalendar
и его дата 01.01.2005, тогда строковое представление MONTH
поле было бы "январем" в длинном стиле в английской локали или "Яне" в коротком стиле. Однако, никакое строковое представление не было бы доступно для DAY_OF_MONTH
поле, и этот метод возвратились бы null
.
Реализация по умолчанию поддерживает календарные поля для который a DateFormatSymbols
имеет имена в данном locale
.
field
- календарное поле, для которого возвращается строковое представлениеstyle
- стиль, которому применяются к строковое представление; один из SHORT
или LONG
.locale
- локаль для строкового представленияfield
в данном style
, или null
если никакое строковое представление не применимо.IllegalArgumentException
- если field
или style
недопустимо, или если это Calendar
неснисходительно, и у любого из календарных полей есть недопустимые значенияNullPointerException
- если locale
нульpublic Map<String,Integer> getDisplayNames(int field, int style, Locale locale)
Map
содержа все имена календаря field
в данном style
и locale
и их соответствующие значения полей. Например, если это Calendar
a GregorianCalendar
, возвращенная карта содержала бы "Яна" к JANUARY
, "Февраль" к FEBRUARY
, и так далее, в коротком стиле в английской локали. Значения других календарных полей могут быть приняты во внимание, чтобы определить ряд имен дисплея. Например, если это Calendar
lunisolar календарная система и значение года, данное YEAR
у поля есть месяц прыжка, этот метод возвратил бы имена месяца, содержащие имя месяца прыжка, и имена месяца отображаются на их значения, определенные в течение года.
Реализация по умолчанию поддерживает имена дисплея, содержавшиеся в a DateFormatSymbols
. Например, если field
MONTH
и style
ALL_STYLES
, этот метод возвращает a Map
содержа все строки, возвращенные DateFormatSymbols.getShortMonths()
и DateFormatSymbols.getMonths()
.
field
- календарное поле, для которого возвращаются имена дисплеяstyle
- стиль, которому применяются к имена дисплея; один из SHORT
, LONG
, или ALL_STYLES
.locale
- локаль для имен дисплеяMap
содержа весь дисплей называет в style
и locale
и их значения полей, или null
если никакие имена дисплея не определяются для field
IllegalArgumentException
- если field
или style
недопустимо, или если это Calendar
неснисходительно, и у любого из календарных полей есть недопустимые значенияNullPointerException
- если locale
нульprotected void complete()
computeTime()
метод вызывают, если временная стоимость (смещение миллисекунды от Эпохи) не была вычислена от календарных значений полей. Затем, computeFields()
метод вызывают, чтобы вычислить все календарные значения полей.public boolean equals(Object obj)
Calendar
к указанному Object
. Результат true
если и только если параметром является a Calendar
объект той же самой календарной системы, которая представляет ту же самую временную стоимость (смещение миллисекунды от Эпохи) под тем же самым Calendar
параметры как этот объект. Calendar
параметры являются значениями, представленными isLenient
, getFirstDayOfWeek
, getMinimalDaysInFirstWeek
и getTimeZone
методы. Если есть какое-либо различие в тех параметрах между двумя Calendar
s, этот метод возвраты false
.
Используйте compareTo
метод, чтобы сравнить только временные стоимости.
equals
в классе Object
obj
- объект сравниться с.true
если этот объект равен obj
; false
иначе.Object.hashCode()
, HashMap
public int hashCode()
hashCode
в классе Object
Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
public boolean before(Object when)
Calendar
представляет время перед временем, представленным указанным Object
. Этот метод эквивалентен: если и только еслиcompareTo(when) < 0
when
a Calendar
экземпляр. Иначе, возвраты метода false
.when
- Object
быть сравненнымtrue
если время этого Calendar
перед временем, представленным when
; false
иначе.compareTo(Calendar)
public boolean after(Object when)
Calendar
представляет время после времени, представленного указанным Object
. Этот метод эквивалентен: если и только еслиcompareTo(when) > 0
when
a Calendar
экземпляр. Иначе, возвраты метода false
.when
- Object
быть сравненнымtrue
если время этого Calendar
после времени, представленного when
; false
иначе.compareTo(Calendar)
public int compareTo(Calendar anotherCalendar)
Calendar
объекты.compareTo
в интерфейсе Comparable<Calendar>
anotherCalendar
- Calendar
быть сравненным.0
если время, представленное параметром, равно времени, представленному этим Calendar
; значение меньше чем 0
если время этого Calendar
перед временем, представленным параметром; и значение, больше чем 0
если время этого Calendar
после времени, представленного параметром.NullPointerException
- если указанное Calendar
null
.IllegalArgumentException
- если временная стоимость указанного Calendar
объект не может быть получен ни из-за каких недопустимых календарных значений.public abstract void add(int field, int amount)
add(Calendar.DAY_OF_MONTH, -5)
.
field
- календарное поле.amount
- количество даты или время, которое будет добавлено к полю.roll(int,int)
, set(int,int)
public abstract void roll(int field, boolean up)
рулон (Календарь. ДАТА, истина). Прокручиваясь в год или Календарь. Поле YEAR, это прокрутит значение года в диапазоне между 1 и значение, возвращенное, вызывая getMaximum(Calendar.YEAR)
. Прокручиваясь на месяце или Календаре. Поле MONTH, другие поля как дата могли бы конфликтовать и, должны быть изменены. Например, прокручивая месяц в день 31.01.96 закончится в 29.02.96. Прокручиваясь на часе-в-дневном или Календаре. Поле HOUR_OF_DAY, это прокрутит значение часа в диапазоне между 0 и 23, который основан на нуле.
field
- поле времени.up
- указывает, должно ли значение поля требуемого времени быть свернуто или скатиться. Используйте истину, свертываясь, ложь иначе.add(int,int)
, set(int,int)
public void roll(int field, int amount)
ОТМЕТЬТЕ: Эта реализация по умолчанию на Calendar
только неоднократно вызывает версию roll()
это протекает один модуль. Это, возможно, не всегда делает правильной вещи. Например, если DAY_OF_MONTH
поле 31, прокручиваясь в течение февраля оставит его набором 28. GregorianCalendar
версия этой функции заботится об этой проблеме. Другие подклассы должны также обеспечить переопределения этой функции, которые делают правильную вещь.
field
- календарное поле.amount
- количество со знаком, чтобы добавить к календарю field
.roll(int,boolean)
, add(int,int)
, set(int,int)
public void setTimeZone(TimeZone value)
value
- данный часовой пояс.public TimeZone getTimeZone()
public void setLenient(boolean lenient)
lenient
- true
если снисходительный режим должен быть включен; false
если это должно быть выключено.isLenient()
, DateFormat.setLenient(boolean)
public boolean isLenient()
true
если режим интерпретации этого календаря снисходителен; false
иначе.setLenient(boolean)
public void setFirstDayOfWeek(int value)
SUNDAY
в США, MONDAY
во Франции.value
- данный первый день недели.getFirstDayOfWeek()
, getMinimalDaysInFirstWeek()
public int getFirstDayOfWeek()
SUNDAY
в США, MONDAY
во Франции.setFirstDayOfWeek(int)
, getMinimalDaysInFirstWeek()
public void setMinimalDaysInFirstWeek(int value)
value
- данные минимальные дни требуются на первой неделе года.getMinimalDaysInFirstWeek()
public int getMinimalDaysInFirstWeek()
setMinimalDaysInFirstWeek(int)
public boolean isWeekDateSupported()
Calendar
поддерживает недельные даты. Реализация по умолчанию этого метода возвраты false
.
true
если это Calendar
поддерживает недельные даты; false
иначе.getWeekYear()
, setWeekDate(int,int,int)
, getWeeksInWeekYear()
public int getWeekYear()
Calendar
. Недельный год находится в синхронизации с недельным циклом. Первый день первой недели является первым днем недельного года. Реализация по умолчанию этого метода бросает UnsupportedOperationException
.
Calendar
UnsupportedOperationException
- если какой-либо недельный год, нумеруя не поддерживается в этом Calendar
.isWeekDateSupported()
, getFirstDayOfWeek()
, getMinimalDaysInFirstWeek()
public void setWeekDate(int weekYear, int weekOfYear, int dayOfWeek)
Calendar
с данные спецификаторы даты - недельный год, неделя года, и день недели. В отличие от этого set
метод, все календарные поля и time
значения вычисляются на возврат.
Если weekOfYear
испытывает недостаток допустимого недельного-летнего диапазона в weekYear
, weekYear
и weekOfYear
значения корректируются в снисходительном режиме, или IllegalArgumentException
бросается в неснисходительный режим.
Реализация по умолчанию этого метода бросает UnsupportedOperationException
.
weekYear
- недельный годweekOfYear
- недельное число, основанное на weekYear
dayOfWeek
- день недельного значения: одна из констант для DAY_OF_WEEK
поле: SUNDAY
, ..., SATURDAY
.IllegalArgumentException
- если какой-либо из данных спецификаторов даты недопустим, или любое из календарных полей непоследовательно с данными спецификаторами даты в неснисходительном режимеUnsupportedOperationException
- если какой-либо недельный год, нумеруя не поддерживается в этом Calendar
.isWeekDateSupported()
, getFirstDayOfWeek()
, getMinimalDaysInFirstWeek()
public int getWeeksInWeekYear()
Calendar
. Реализация по умолчанию этого метода бросает UnsupportedOperationException
.
UnsupportedOperationException
- если какой-либо недельный год, нумеруя не поддерживается в этом Calendar
.WEEK_OF_YEAR
, isWeekDateSupported()
, getWeekYear()
, getActualMaximum(int)
public abstract int getMinimum(int field)
Calendar
экземпляр. Минимальное значение определяется как самое маленькое значение, возвращенное get
метод для любой возможной временной стоимости. Минимальное значение зависит от календарной системы определенные параметры экземпляра.field
- календарное поле.getMaximum(int)
, getGreatestMinimum(int)
, getLeastMaximum(int)
, getActualMinimum(int)
, getActualMaximum(int)
public abstract int getMaximum(int field)
Calendar
экземпляр. Максимальное значение определяется как самое большое значение, возвращенное get
метод для любой возможной временной стоимости. Максимальное значение зависит от календарной системы определенные параметры экземпляра.field
- календарное поле.getMinimum(int)
, getGreatestMinimum(int)
, getLeastMaximum(int)
, getActualMinimum(int)
, getActualMaximum(int)
public abstract int getGreatestMinimum(int field)
Calendar
экземпляр. Самое высокое минимальное значение определяется как самое большое значение, возвращенное getActualMinimum(int)
для любой возможной временной стоимости. Самое большое минимальное значение зависит от календарной системы определенные параметры экземпляра.field
- календарное поле.getMinimum(int)
, getMaximum(int)
, getLeastMaximum(int)
, getActualMinimum(int)
, getActualMaximum(int)
public abstract int getLeastMaximum(int field)
Calendar
экземпляр. Самое низкое максимальное значение определяется как самое маленькое значение, возвращенное getActualMaximum(int)
для любой возможной временной стоимости. Наименее максимальное значение зависит от календарной системы определенные параметры экземпляра. Например, a Calendar
для Григорианского календаря система возвращается 28 для DAY_OF_MONTH
поле, потому что 28-ым является прошлый день самого короткого месяца этого календаря, февраль в невисокосный год.field
- календарное поле.getMinimum(int)
, getMaximum(int)
, getGreatestMinimum(int)
, getActualMinimum(int)
, getActualMaximum(int)
public int getActualMinimum(int field)
Calendar
. Реализация по умолчанию этого метода использует итеративный алгоритм, чтобы определить фактическое минимальное значение для календарного поля. Подклассы, если возможный, должны переопределить это с более эффективной реализацией - во многих случаях, они могут просто возвратиться getMinimum()
.
field
- календарное полеCalendar
getMinimum(int)
, getMaximum(int)
, getGreatestMinimum(int)
, getLeastMaximum(int)
, getActualMaximum(int)
public int getActualMaximum(int field)
Calendar
. Например, фактическое максимальное значение MONTH
поле 12 через несколько лет, и 13 в других годах в еврейской календарной системе. Реализация по умолчанию этого метода использует итеративный алгоритм, чтобы определить фактическое максимальное значение для календарного поля. Подклассы, если возможный, должны переопределить это с более эффективной реализацией.
field
- календарное полеCalendar
getMinimum(int)
, getMaximum(int)
, getGreatestMinimum(int)
, getLeastMaximum(int)
, getActualMinimum(int)
public Object clone()
public String toString()
null
.
Для дальнейшей ссылки API и документации разработчика, см.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.