HebrewCalendar
public
class
HebrewCalendar
extends Calendar
HebrewCalendar
is a subclass of Calendar
that that implements the traditional Hebrew calendar.
This is the civil calendar in Israel and the liturgical calendar
of the Jewish faith worldwide.
The Hebrew calendar is lunisolar and thus has a number of interesting
properties that distinguish it from the Gregorian. Months start
on the day of (an arithmetic approximation of) each new moon. Since the
solar year (approximately 365.24 days) is not an even multiple of
the lunar month (approximately 29.53 days) an extra "leap month" is
inserted in 7 out of every 19 years. To make matters even more
interesting, the start of a year can be delayed by up to three days
in order to prevent certain holidays from falling on the Sabbath and
to prevent certain illegal year lengths. Finally, the lengths of certain
months can vary depending on the number of days in the year.
The leap month is known as "Adar 1" and is inserted between the
months of Shevat and Adar in leap years. Since the leap month does
not come at the end of the year, calculations involving
month numbers are particularly complex. Users of this class should
make sure to use the roll
and add
methods
rather than attempting to perform date arithmetic by manipulating
the fields directly.
Note: In the traditional Hebrew calendar, days start at sunset.
However, in order to keep the time fields in this class
synchronized with those of the other calendars and with local clock time,
we treat days and months as beginning at midnight,
roughly 6 hours after the corresponding sunset.
If you are interested in more information on the rules behind the Hebrew
calendar, see one of the following references:
This class should not be subclassed.
HebrewCalendar usually should be instantiated using
Calendar.getInstance(ULocale)
passing in a ULocale
with the tag "@calendar=hebrew"
.
Summary
Constants |
int |
ADAR
Constant for the Adar, the 7th month of the Hebrew year.
|
int |
ADAR_1
Constant for Adar I, the 6th month of the Hebrew year
(present in leap years only).
|
int |
AV
Constant for Av, the 12th month of the Hebrew year.
|
int |
ELUL
Constant for Elul, the 13th month of the Hebrew year.
|
int |
HESHVAN
Constant for Heshvan, the 2nd month of the Hebrew year.
|
int |
IYAR
Constant for Iyar, the 9th month of the Hebrew year.
|
int |
KISLEV
Constant for Kislev, the 3rd month of the Hebrew year.
|
int |
NISAN
Constant for Nisan, the 8th month of the Hebrew year.
|
int |
SHEVAT
Constant for Shevat, the 5th month of the Hebrew year.
|
int |
SIVAN
Constant for Sivan, the 10th month of the Hebrew year.
|
int |
TAMUZ
Constant for Tammuz, the 11th month of the Hebrew year.
|
int |
TEVET
Constant for Tevet, the 4th month of the Hebrew year.
|
int |
TISHRI
Constant for Tishri, the 1st month of the Hebrew year.
|
Inherited constants |
From class
android.icu.util.Calendar
int |
AM
Value of the AM_PM field indicating the
period of the day from midnight to just before noon.
|
int |
AM_PM
Field number for get and set indicating
whether the HOUR is before or after noon.
|
int |
APRIL
Value of the MONTH field indicating the
fourth month of the year.
|
int |
AUGUST
Value of the MONTH field indicating the
eighth month of the year.
|
int |
BASE_FIELD_COUNT
This constant is deprecated.
ICU 58 The numeric value may change over time, see ICU ticket #12420.
|
int |
DATE
Field number for get and set indicating the
day of the month.
|
int |
DAY_OF_MONTH
Field number for get and set indicating the
day of the month.
|
int |
DAY_OF_WEEK
Field number for get and set indicating the day
of the week.
|
int |
DAY_OF_WEEK_IN_MONTH
Field number for get and set indicating the
ordinal number of the day of the week within the current month.
|
int |
DAY_OF_YEAR
Field number for get and set indicating the day
number within the current year.
|
int |
DECEMBER
Value of the MONTH field indicating the
twelfth month of the year.
|
int |
DOW_LOCAL
[icu] Field number for get() and set()
indicating the localized day of week.
|
int |
DST_OFFSET
Field number for get and set indicating the
daylight savings offset in milliseconds.
|
int |
EPOCH_JULIAN_DAY
The Julian day of the epoch, that is, January 1, 1970 on the
Gregorian calendar.
|
int |
ERA
Field number for get and set indicating the
era, e.g., AD or BC in the Julian calendar.
|
int |
EXTENDED_YEAR
[icu] Field number for get() and set()
indicating the extended year.
|
int |
FEBRUARY
Value of the MONTH field indicating the
second month of the year.
|
int |
FRIDAY
Value of the DAY_OF_WEEK field indicating
Friday.
|
int |
GREATEST_MINIMUM
Limit type for getLimit() and handleGetLimit()
indicating the greatest minimum value that a field can take.
|
int |
HOUR
Field number for get and set indicating the
hour of the morning or afternoon.
|
int |
HOUR_OF_DAY
Field number for get and set indicating the
hour of the day.
|
int |
INTERNALLY_SET
Value of the time stamp stamp[] indicating that a field
has been set via computations from the time or from other fields.
|
int |
IS_LEAP_MONTH
[icu] Field indicating whether or not the current month is a leap month.
|
int |
JANUARY
Value of the MONTH field indicating the
first month of the year.
|
int |
JAN_1_1_JULIAN_DAY
The Julian day of the Gregorian epoch, that is, January 1, 1 on the
Gregorian calendar.
|
int |
JULIAN_DAY
[icu] Field number for get() and set()
indicating the modified Julian day number.
|
int |
JULY
Value of the MONTH field indicating the
seventh month of the year.
|
int |
JUNE
Value of the MONTH field indicating the
sixth month of the year.
|
int |
LEAST_MAXIMUM
Limit type for getLimit() and handleGetLimit()
indicating the least maximum value that a field can take.
|
int |
MARCH
Value of the MONTH field indicating the
third month of the year.
|
int |
MAXIMUM
Limit type for getLimit() and handleGetLimit()
indicating the maximum value that a field can take (greatest maximum).
|
int |
MAX_FIELD_COUNT
This constant is deprecated.
ICU 58 The numeric value may change over time, see ICU ticket #12420.
|
int |
MAX_JULIAN
The maximum supported Julian day.
|
long |
MAX_MILLIS
The maximum supported epoch milliseconds.
|
int |
MAY
Value of the MONTH field indicating the
fifth month of the year.
|
int |
MILLISECOND
Field number for get and set indicating the
millisecond within the second.
|
int |
MILLISECONDS_IN_DAY
[icu] Field number for get() and set()
indicating the milliseconds in the day.
|
int |
MINIMUM
Limit type for getLimit() and handleGetLimit()
indicating the minimum value that a field can take (least minimum).
|
int |
MINIMUM_USER_STAMP
If the time stamp stamp[] has a value greater than or
equal to MINIMUM_USER_SET then it has been set by the
user via a call to set() .
|
int |
MINUTE
Field number for get and set indicating the
minute within the hour.
|
int |
MIN_JULIAN
The minimum supported Julian day.
|
long |
MIN_MILLIS
The minimum supported epoch milliseconds.
|
int |
MONDAY
Value of the DAY_OF_WEEK field indicating
Monday.
|
int |
MONTH
Field number for get and set indicating the
month.
|
int |
NOVEMBER
Value of the MONTH field indicating the
eleventh month of the year.
|
int |
OCTOBER
Value of the MONTH field indicating the
tenth month of the year.
|
long |
ONE_DAY
The number of milliseconds in one day.
|
int |
ONE_HOUR
The number of milliseconds in one hour.
|
int |
ONE_MINUTE
The number of milliseconds in one minute.
|
int |
ONE_SECOND
The number of milliseconds in one second.
|
long |
ONE_WEEK
The number of milliseconds in one week.
|
int |
PM
Value of the AM_PM field indicating the
period of the day from noon to just before midnight.
|
int |
RESOLVE_REMAP
Value to OR against resolve table field values for remapping.
|
int |
SATURDAY
Value of the DAY_OF_WEEK field indicating
Saturday.
|
int |
SECOND
Field number for get and set indicating the
second within the minute.
|
int |
SEPTEMBER
Value of the MONTH field indicating the
ninth month of the year.
|
int |
SUNDAY
Value of the DAY_OF_WEEK field indicating
Sunday.
|
int |
THURSDAY
Value of the DAY_OF_WEEK field indicating
Thursday.
|
int |
TUESDAY
Value of the DAY_OF_WEEK field indicating
Tuesday.
|
int |
UNDECIMBER
Value of the MONTH field indicating the
thirteenth month of the year.
|
int |
UNSET
Value of the time stamp stamp[] indicating that
a field has not been set since the last call to clear() .
|
int |
WALLTIME_FIRST
[icu]Option used by setRepeatedWallTimeOption(int) and
setSkippedWallTimeOption(int) specifying an ambiguous wall time
to be interpreted as the earliest.
|
int |
WALLTIME_LAST
[icu]Option used by setRepeatedWallTimeOption(int) and
setSkippedWallTimeOption(int) specifying an ambiguous wall time
to be interpreted as the latest.
|
int |
WALLTIME_NEXT_VALID
[icu]Option used by setSkippedWallTimeOption(int) specifying an
ambiguous wall time to be interpreted as the next valid wall time.
|
int |
WEDNESDAY
Value of the DAY_OF_WEEK field indicating
Wednesday.
|
int |
WEEK_OF_MONTH
Field number for get and set indicating the
week number within the current month.
|
int |
WEEK_OF_YEAR
Field number for get and set indicating the
week number within the current year.
|
int |
YEAR
Field number for get and set indicating the
year.
|
int |
YEAR_WOY
[icu] Field number for get() and set()
indicating the extended year corresponding to the
WEEK_OF_YEAR field.
|
int |
ZONE_OFFSET
Field number for get and set indicating the
raw offset from GMT in milliseconds.
|
|
Public constructors |
HebrewCalendar()
Constructs a default HebrewCalendar using the current time
in the default time zone with the default FORMAT locale.
|
HebrewCalendar(TimeZone zone)
Constructs a HebrewCalendar based on the current time
in the given time zone with the default FORMAT locale.
|
HebrewCalendar(Locale aLocale)
Constructs a HebrewCalendar based on the current time
in the default time zone with the given locale.
|
HebrewCalendar(ULocale locale)
Constructs a HebrewCalendar based on the current time
in the default time zone with the given locale.
|
HebrewCalendar(TimeZone zone, Locale aLocale)
Constructs a HebrewCalendar based on the current time
in the given time zone with the given locale.
|
HebrewCalendar(TimeZone zone, ULocale locale)
Constructs a HebrewCalendar based on the current time
in the given time zone with the given locale.
|
HebrewCalendar(int year, int month, int date)
Constructs a HebrewCalendar with the given date set
in the default time zone with the default FORMAT locale.
|
HebrewCalendar(Date date)
Constructs a HebrewCalendar with the given date set
in the default time zone with the default FORMAT locale.
|
HebrewCalendar(int year, int month, int date, int hour, int minute, int second)
Constructs a HebrewCalendar with the given date
and time set for the default time zone with the default FORMAT locale.
|
Public methods |
void
|
add(int field, int amount)
Add a signed amount to a specified field, using this calendar's rules.
|
String
|
getType()
[icu] Returns the calendar type name string for this Calendar object.
|
void
|
roll(int field, int amount)
Rolls (up/down) a specified amount time on the given field.
|
Protected methods |
void
|
handleComputeFields(int julianDay)
Subclasses may override this method to compute several fields
specific to each calendar system.
|
int
|
handleComputeMonthStart(int eyear, int month, boolean useMonth)
Return JD of start of given month/year.
|
int
|
handleGetExtendedYear()
Returns the extended year defined by the current fields.
|
int
|
handleGetLimit(int field, int limitType)
Subclass API for defining limits of different types.
|
int
|
handleGetMonthLength(int extendedYear, int month)
Returns the length of the given month in the given year
|
int
|
handleGetYearLength(int eyear)
Returns the number of days in the given Hebrew year
|
Inherited methods |
From class
android.icu.util.Calendar
void
|
add(int field, int amount)
Add a signed amount to a specified field, using this calendar's rules.
|
boolean
|
after(Object when)
Compares the time field records.
|
boolean
|
before(Object when)
Compares the time field records.
|
final
void
|
clear()
Clears the values of all the time fields.
|
final
void
|
clear(int field)
Clears the value in the given time field.
|
Object
|
clone()
Overrides Cloneable
|
int
|
compareTo(Calendar that)
Compares the times (in millis) represented by two
Calendar objects.
|
void
|
complete()
Fills in any unset fields in the time field list.
|
void
|
computeFields()
Converts the current millisecond time value time to
field values in fields[] .
|
final
void
|
computeGregorianFields(int julianDay)
Compute the Gregorian calendar year, month, and day of month from the
Julian day.
|
int
|
computeGregorianMonthStart(int year, int month)
Compute the Julian day of a month of the Gregorian calendar.
|
int
|
computeJulianDay()
Compute the Julian day number as specified by this calendar's fields.
|
int
|
computeMillisInDay()
This method is deprecated.
ICU 60
|
void
|
computeTime()
Converts the current field values in fields[] to the
millisecond time value time .
|
int
|
computeZoneOffset(long millis, int millisInDay)
This method is deprecated.
ICU 60
|
boolean
|
equals(Object obj)
Compares this calendar to the specified object.
|
int
|
fieldDifference(Date when, int field)
[icu] Returns the difference between the given time and the time this
calendar object is set to.
|
String
|
fieldName(int field)
Returns a string name for a field, for debugging and exceptions.
|
static
final
int
|
floorDivide(int numerator, int denominator, int[] remainder)
Divide two integers, returning the floor of the quotient, and
the modulus remainder.
|
static
final
int
|
floorDivide(int numerator, int denominator)
Divide two integers, returning the floor of the quotient.
|
static
final
long
|
floorDivide(long numerator, long denominator)
Divide two long integers, returning the floor of the quotient.
|
static
final
int
|
floorDivide(long numerator, int denominator, int[] remainder)
Divide two integers, returning the floor of the quotient, and
the modulus remainder.
|
final
int
|
get(int field)
Returns the value for a given time field.
|
int
|
getActualMaximum(int field)
Returns the maximum value that this field could have, given the
current date.
|
int
|
getActualMinimum(int field)
Returns the minimum value that this field could have, given the current date.
|
static
Locale[]
|
getAvailableLocales()
Returns the list of locales for which Calendars are installed.
|
DateFormat
|
getDateTimeFormat(int dateStyle, int timeStyle, ULocale loc)
[icu] Returns a DateFormat appropriate to this calendar.
|
DateFormat
|
getDateTimeFormat(int dateStyle, int timeStyle, Locale loc)
[icu] Returns a DateFormat appropriate to this calendar.
|
String
|
getDisplayName(ULocale loc)
Returns the name of this calendar in the language of the given locale.
|
String
|
getDisplayName(Locale loc)
Returns the name of this calendar in the language of the given locale.
|
final
int
|
getFieldCount()
[icu] Returns the number of fields defined by this calendar.
|
int[][][]
|
getFieldResolutionTable()
Returns the field resolution array for this calendar.
|
int
|
getFirstDayOfWeek()
Returns what the first day of the week is,
where 1 = SUNDAY and 7 = SATURDAY .
|
final
int
|
getGreatestMinimum(int field)
Returns the highest minimum value for the given field if varies.
|
final
int
|
getGregorianDayOfMonth()
Returns the day of month (1-based) on the Gregorian calendar as
computed by computeGregorianFields() .
|
final
int
|
getGregorianDayOfYear()
Returns the day of year (1-based) on the Gregorian calendar as
computed by computeGregorianFields() .
|
final
int
|
getGregorianMonth()
Returns the month (0-based) on the Gregorian calendar as computed by
computeGregorianFields() .
|
final
int
|
getGregorianYear()
Returns the extended year on the Gregorian calendar as computed by
computeGregorianFields() .
|
static
Calendar
|
getInstance()
Returns a calendar using the default time zone and locale.
|
static
Calendar
|
getInstance(Locale aLocale)
Returns a calendar using the default time zone and specified locale.
|
static
Calendar
|
getInstance(TimeZone zone, Locale aLocale)
Returns a calendar with the specified time zone and locale.
|
static
Calendar
|
getInstance(TimeZone zone, ULocale locale)
Returns a calendar with the specified time zone and locale.
|
static
Calendar
|
getInstance(TimeZone zone)
Returns a calendar using the specified time zone and default locale.
|
static
Calendar
|
getInstance(ULocale locale)
Returns a calendar using the default time zone and specified locale.
|
static
final
String[]
|
getKeywordValuesForLocale(String key, ULocale locale, boolean commonlyUsed)
[icu] Given a key and a locale, returns an array of string values in a preferred
order that would make a difference.
|
final
int
|
getLeastMaximum(int field)
Returns the lowest maximum value for the given field if varies.
|
int
|
getLimit(int field, int limitType)
Returns a limit for a field.
|
final
int
|
getMaximum(int field)
Returns the maximum value for the given time field.
|
int
|
getMinimalDaysInFirstWeek()
Returns what the minimal days required in the first week of the year are.
|
final
int
|
getMinimum(int field)
Returns the minimum value for the given time field.
|
int
|
getRepeatedWallTimeOption()
[icu]Gets the behavior for handling wall time repeating multiple times
at negative time zone offset transitions.
|
int
|
getSkippedWallTimeOption()
[icu]Gets the behavior for handling skipped wall time at positive time zone offset
transitions.
|
final
int
|
getStamp(int field)
Returns the timestamp of a field.
|
final
Date
|
getTime()
Returns this Calendar's current time.
|
long
|
getTimeInMillis()
Returns this Calendar's current time as a long.
|
TimeZone
|
getTimeZone()
Returns the time zone.
|
String
|
getType()
[icu] Returns the calendar type name string for this Calendar object.
|
Calendar.WeekData
|
getWeekData()
[icu] Return simple, immutable struct-like class for access to the weekend data in this calendar.
|
static
Calendar.WeekData
|
getWeekDataForRegion(String region)
[icu] Return simple, immutable struct-like class for access to the CLDR weekend data.
|
static
final
int
|
gregorianMonthLength(int y, int m)
Returns the length of a month of the Gregorian calendar.
|
static
final
int
|
gregorianPreviousMonthLength(int y, int m)
Returns the length of a previous month of the Gregorian calendar.
|
void
|
handleComputeFields(int julianDay)
Subclasses may override this method to compute several fields
specific to each calendar system.
|
int
|
handleComputeJulianDay(int bestField)
Subclasses may override this.
|
abstract
int
|
handleComputeMonthStart(int eyear, int month, boolean useMonth)
Returns the Julian day number of day before the first day of the
given month in the given extended year.
|
int[]
|
handleCreateFields()
Subclasses that use additional fields beyond those defined in
Calendar should override this method to return an
int[] array of the appropriate length.
|
DateFormat
|
handleGetDateFormat(String pattern, String override, Locale locale)
Creates a DateFormat appropriate to this calendar.
|
DateFormat
|
handleGetDateFormat(String pattern, ULocale locale)
Creates a DateFormat appropriate to this calendar.
|
DateFormat
|
handleGetDateFormat(String pattern, Locale locale)
Creates a DateFormat appropriate to this calendar.
|
abstract
int
|
handleGetExtendedYear()
Returns the extended year defined by the current fields.
|
abstract
int
|
handleGetLimit(int field, int limitType)
Subclass API for defining limits of different types.
|
int
|
handleGetMonthLength(int extendedYear, int month)
Returns the number of days in the given month of the given extended
year of this calendar system.
|
int
|
handleGetYearLength(int eyear)
Returns the number of days in the given extended year of this
calendar system.
|
int
|
hashCode()
Returns a hash code for this calendar.
|
final
int
|
internalGet(int field)
Returns the value for a given time field.
|
final
int
|
internalGet(int field, int defaultValue)
Returns the value for a given time field, or return the given default
value if the field is not set.
|
final
long
|
internalGetTimeInMillis()
Returns the current milliseconds without recomputing.
|
final
void
|
internalSet(int field, int value)
Set a field to a value.
|
boolean
|
isEquivalentTo(Calendar other)
[icu] Returns true if the given Calendar object is equivalent to this
one.
|
static
final
boolean
|
isGregorianLeapYear(int year)
Determines if the given year is a leap year.
|
boolean
|
isLenient()
Tell whether date/time interpretation is to be lenient.
|
final
boolean
|
isSet(int field)
Determines if the given time field has a value set.
|
boolean
|
isWeekend(Date date)
[icu] Returns true if the given date and time is in the weekend in this calendar
system.
|
boolean
|
isWeekend()
[icu] Returns true if this Calendar's current date and time is in the weekend in
this calendar system.
|
static
final
int
|
julianDayToDayOfWeek(int julian)
Returns the day of week, from SUNDAY to SATURDAY, given a Julian day.
|
static
final
long
|
julianDayToMillis(int julian)
Converts Julian day to time as milliseconds.
|
static
final
int
|
millisToJulianDay(long millis)
Converts time as milliseconds to Julian day.
|
int
|
newerField(int defaultField, int alternateField)
Returns the field that is newer, either defaultField, or
alternateField.
|
int
|
newestStamp(int first, int last, int bestStampSoFar)
Returns the newest stamp of a given range of fields.
|
void
|
pinField(int field)
Adjust the specified field so that it is within
the allowable range for the date to which this calendar is set.
|
void
|
prepareGetActual(int field, boolean isMinimum)
Prepare this calendar for computing the actual minimum or maximum.
|
int
|
resolveFields(int[][][] precedenceTable)
Given a precedence table, return the newest field combination in
the table, or -1 if none is found.
|
final
void
|
roll(int field, boolean up)
Rolls (up/down) a single unit of time on the given field.
|
void
|
roll(int field, int amount)
Rolls (up/down) a specified amount time on the given field.
|
final
void
|
set(int year, int month, int date, int hour, int minute, int second)
Sets the values for the fields year, month, date, hour, minute, and second.
|
final
void
|
set(int year, int month, int date, int hour, int minute)
Sets the values for the fields year, month, date, hour, and minute.
|
final
void
|
set(int field, int value)
Sets the time field with the given value.
|
final
void
|
set(int year, int month, int date)
Sets the values for the fields year, month, and date.
|
void
|
setFirstDayOfWeek(int value)
Sets what the first day of the week is,
where 1 = SUNDAY and 7 = SATURDAY .
|
void
|
setLenient(boolean lenient)
Specify whether or not date/time interpretation is to be lenient.
|
void
|
setMinimalDaysInFirstWeek(int value)
Sets what the minimal days required in the first week of the year are.
|
void
|
setRepeatedWallTimeOption(int option)
[icu]Sets the behavior for handling wall time repeating multiple times
at negative time zone offset transitions.
|
void
|
setSkippedWallTimeOption(int option)
[icu]Sets the behavior for handling skipped wall time at positive time zone offset
transitions.
|
final
void
|
setTime(Date date)
Sets this Calendar's current time with the given Date.
|
void
|
setTimeInMillis(long millis)
Sets this Calendar's current time from the given long value.
|
void
|
setTimeZone(TimeZone value)
Sets the time zone with the given time zone value.
|
Calendar
|
setWeekData(Calendar.WeekData wdata)
[icu] Set data in this calendar based on the WeekData input.
|
String
|
toString()
Returns a string representation of this calendar.
|
void
|
validateField(int field)
Validate a single field of this calendar.
|
final
void
|
validateField(int field, int min, int max)
Validate a single field of this calendar given its minimum and
maximum allowed value.
|
void
|
validateFields()
Ensure that each field is within its valid range by calling validateField(int) on each field that has been set.
|
int
|
weekNumber(int desiredDay, int dayOfPeriod, int dayOfWeek)
Returns the week number of a day, within a period.
|
final
int
|
weekNumber(int dayOfPeriod, int dayOfWeek)
Returns the week number of a day, within a period.
|
|
From class
java.lang.Object
Object
|
clone()
Creates and returns a copy of this object.
|
boolean
|
equals(Object obj)
Indicates whether some other object is "equal to" this one.
|
void
|
finalize()
Called by the garbage collector on an object when garbage collection
determines that there are no more references to the object.
|
final
Class<?>
|
getClass()
Returns the runtime class of this Object .
|
int
|
hashCode()
Returns a hash code value for the object.
|
final
void
|
notify()
Wakes up a single thread that is waiting on this object's
monitor.
|
final
void
|
notifyAll()
Wakes up all threads that are waiting on this object's monitor.
|
String
|
toString()
Returns a string representation of the object.
|
final
void
|
wait(long timeout, int nanos)
Causes the current thread to wait until another thread invokes the
notify() method or the
notifyAll() method for this object, or
some other thread interrupts the current thread, or a certain
amount of real time has elapsed.
|
final
void
|
wait(long timeout)
Causes the current thread to wait until either another thread invokes the
notify() method or the
notifyAll() method for this object, or a
specified amount of time has elapsed.
|
final
void
|
wait()
Causes the current thread to wait until another thread invokes the
notify() method or the
notifyAll() method for this object.
|
|
|
Constants
ADAR
public static final int ADAR
Constant for the Adar, the 7th month of the Hebrew year.
Constant Value:
6
(0x00000006)
ADAR_1
public static final int ADAR_1
Constant for Adar I, the 6th month of the Hebrew year
(present in leap years only). In non-leap years, the calendar
jumps from Shevat (5th month) to Adar (7th month).
Constant Value:
5
(0x00000005)
AV
public static final int AV
Constant for Av, the 12th month of the Hebrew year.
Constant Value:
11
(0x0000000b)
ELUL
public static final int ELUL
Constant for Elul, the 13th month of the Hebrew year.
Constant Value:
12
(0x0000000c)
HESHVAN
public static final int HESHVAN
Constant for Heshvan, the 2nd month of the Hebrew year.
Constant Value:
1
(0x00000001)
IYAR
public static final int IYAR
Constant for Iyar, the 9th month of the Hebrew year.
Constant Value:
8
(0x00000008)
KISLEV
public static final int KISLEV
Constant for Kislev, the 3rd month of the Hebrew year.
Constant Value:
2
(0x00000002)
NISAN
public static final int NISAN
Constant for Nisan, the 8th month of the Hebrew year.
Constant Value:
7
(0x00000007)
SHEVAT
public static final int SHEVAT
Constant for Shevat, the 5th month of the Hebrew year.
Constant Value:
4
(0x00000004)
SIVAN
public static final int SIVAN
Constant for Sivan, the 10th month of the Hebrew year.
Constant Value:
9
(0x00000009)
TAMUZ
public static final int TAMUZ
Constant for Tammuz, the 11th month of the Hebrew year.
Constant Value:
10
(0x0000000a)
TEVET
public static final int TEVET
Constant for Tevet, the 4th month of the Hebrew year.
Constant Value:
3
(0x00000003)
TISHRI
public static final int TISHRI
Constant for Tishri, the 1st month of the Hebrew year.
Constant Value:
0
(0x00000000)
Public constructors
HebrewCalendar
public HebrewCalendar ()
Constructs a default HebrewCalendar
using the current time
in the default time zone with the default FORMAT
locale.
HebrewCalendar
public HebrewCalendar (TimeZone zone)
Constructs a HebrewCalendar
based on the current time
in the given time zone with the default FORMAT
locale.
Parameters |
zone |
TimeZone : The time zone for the new calendar. |
HebrewCalendar
public HebrewCalendar (Locale aLocale)
Constructs a HebrewCalendar
based on the current time
in the default time zone with the given locale.
Parameters |
aLocale |
Locale : The locale for the new calendar. |
HebrewCalendar
public HebrewCalendar (ULocale locale)
Constructs a HebrewCalendar
based on the current time
in the default time zone with the given locale.
Parameters |
locale |
ULocale : The locale for the new calendar. |
HebrewCalendar
public HebrewCalendar (TimeZone zone,
Locale aLocale)
Constructs a HebrewCalendar
based on the current time
in the given time zone with the given locale.
Parameters |
zone |
TimeZone : The time zone for the new calendar. |
aLocale |
Locale : The locale for the new calendar. |
HebrewCalendar
public HebrewCalendar (TimeZone zone,
ULocale locale)
Constructs a HebrewCalendar
based on the current time
in the given time zone with the given locale.
Parameters |
zone |
TimeZone : The time zone for the new calendar. |
locale |
ULocale : The locale for the new calendar. |
HebrewCalendar
public HebrewCalendar (int year,
int month,
int date)
Constructs a HebrewCalendar
with the given date set
in the default time zone with the default FORMAT
locale.
Parameters |
year |
int : The value used to set the calendar's YEAR time field. |
month |
int : The value used to set the calendar's MONTH time field.
The value is 0-based. e.g., 0 for Tishri. |
date |
int : The value used to set the calendar's DATE time field. |
HebrewCalendar
public HebrewCalendar (Date date)
Constructs a HebrewCalendar
with the given date set
in the default time zone with the default FORMAT
locale.
Parameters |
date |
Date : The date to which the new calendar is set. |
HebrewCalendar
public HebrewCalendar (int year,
int month,
int date,
int hour,
int minute,
int second)
Constructs a HebrewCalendar
with the given date
and time set for the default time zone with the default FORMAT
locale.
Parameters |
year |
int : The value used to set the calendar's YEAR time field. |
month |
int : The value used to set the calendar's MONTH time field.
The value is 0-based. e.g., 0 for Tishri. |
date |
int : The value used to set the calendar's DATE time field. |
hour |
int : The value used to set the calendar's HOUR_OF_DAY time field. |
minute |
int : The value used to set the calendar's MINUTE time field. |
second |
int : The value used to set the calendar's SECOND time field. |
Public methods
add
public void add (int field,
int amount)
Add a signed amount to a specified field, using this calendar's rules.
For example, to add three days to the current date, you can call
add(Calendar.DATE, 3)
.
When adding to certain fields, the values of other fields may conflict and
need to be changed. For example, when adding one to the MONTH
field
for the date "30 Av 5758", the DAY_OF_MONTH
field
must be adjusted so that the result is "29 Elul 5758" rather than the invalid
"30 Elul 5758".
This method is able to add to
all fields except for ERA
, DST_OFFSET
,
and ZONE_OFFSET
.
Note: You should always use roll
and add rather
than attempting to perform arithmetic operations directly on the fields
of a HebrewCalendar. Since the MONTH
field behaves
discontinuously in non-leap years, simple arithmetic can give invalid results.
Parameters |
field |
int : the time field. |
amount |
int : the amount to add to the field. |
getType
public String getType ()
[icu] Returns the calendar type name string for this Calendar object.
The returned string is the legacy ICU calendar attribute value,
for example, "gregorian" or "japanese".
See type="old type name" for the calendar attribute of locale IDs
at http://www.unicode.org/reports/tr35/#Key_Type_Definitions
Returns |
String |
legacy calendar type name string |
roll
public void roll (int field,
int amount)
Rolls (up/down) a specified amount time on the given field. For
example, to roll the current date up by three days, you can call
roll(Calendar.DATE, 3)
. If the
field is rolled past its maximum allowable value, it will "wrap" back
to its minimum and continue rolling.
For example, calling roll(Calendar.DATE, 10)
on a Hebrew calendar set to "25 Av 5758" will result in the date "5 Av 5758".
When rolling certain fields, the values of other fields may conflict and
need to be changed. For example, when rolling the MONTH
field
upward by one for the date "30 Av 5758", the DAY_OF_MONTH
field
must be adjusted so that the result is "29 Elul 5758" rather than the invalid
"30 Elul".
This method is able to roll
all fields except for ERA
, DST_OFFSET
,
and ZONE_OFFSET
. Subclasses may, of course, add support for
additional fields in their overrides of roll
.
Note: You should always use roll and add
rather
than attempting to perform arithmetic operations directly on the fields
of a HebrewCalendar. Since the MONTH
field behaves
discontinuously in non-leap years, simple arithmetic can give invalid results.
Parameters |
field |
int : the time field. |
amount |
int : the amount by which the field should be rolled. |
Protected methods
handleComputeFields
protected void handleComputeFields (int julianDay)
Subclasses may override this method to compute several fields
specific to each calendar system. These are:
- ERA
- YEAR
- MONTH
- DAY_OF_MONTH
- DAY_OF_YEAR
- EXTENDED_YEAR
Subclasses can refer to the DAY_OF_WEEK and DOW_LOCAL fields,
which will be set when this method is called. Subclasses can
also call the getGregorianXxx() methods to obtain Gregorian
calendar equivalents for the given Julian day.
In addition, subclasses should compute any subclass-specific
fields, that is, fields from BASE_FIELD_COUNT to
getFieldCount() - 1.
handleComputeMonthStart
protected int handleComputeMonthStart (int eyear,
int month,
boolean useMonth)
Return JD of start of given month/year.
Parameters |
eyear |
int : the extended year |
month |
int : the zero-based month, or 0 if useMonth is false |
useMonth |
boolean : if false, compute the day before the first day of
the given year, otherwise, compute the day before the first day of
the given month |
Returns |
int |
the Julian day number of the day before the first
day of the given month and year |
handleGetExtendedYear
protected int handleGetExtendedYear ()
Returns the extended year defined by the current fields. This will
use the EXTENDED_YEAR field or the YEAR and supra-year fields (such
as ERA) specific to the calendar system, depending on which set of
fields is newer.
Returns |
int |
the extended year |
handleGetLimit
protected int handleGetLimit (int field,
int limitType)
Subclass API for defining limits of different types.
Subclasses must implement this method to return limits for the
following fields:
ERA
YEAR
MONTH
WEEK_OF_YEAR
WEEK_OF_MONTH
DAY_OF_MONTH
DAY_OF_YEAR
DAY_OF_WEEK_IN_MONTH
YEAR_WOY
EXTENDED_YEAR
Parameters |
field |
int : one of the above field numbers |
limitType |
int : one of MINIMUM , GREATEST_MINIMUM ,
LEAST_MAXIMUM , or MAXIMUM |
handleGetMonthLength
protected int handleGetMonthLength (int extendedYear,
int month)
Returns the length of the given month in the given year
Parameters |
extendedYear |
int |
month |
int |
handleGetYearLength
protected int handleGetYearLength (int eyear)
Returns the number of days in the given Hebrew year