Package com.ibm.icu.impl
Class Grego
java.lang.Object
com.ibm.icu.impl.Grego
A utility class providing proleptic Gregorian calendar functions
used by time zone and calendar code. Do not instantiate.
Note: Unlike GregorianCalendar, all computations performed by this
class occur in the pure proleptic GregorianCalendar.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final int[]
private static final int
private static final int
static final long
static final int
static final int
static final int
static final int
static final long
private static final int[]
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic int
dayOfWeek
(long day) Return the day of week on the 1970-epoch daystatic int[]
dayToFields
(long day, int[] fields) dayToYear
(long day) static long
fieldsToDay
(int year, int month, int dom) Convert a year, month, and day-of-month, given in the proleptic Gregorian calendar, to 1970 epoch days.static long
floorDivide
(long numerator, long denominator) floorDivideAndRemainer
(long numerator, int denominator) static int
getDayOfWeekInMonth
(int year, int month, int dayOfMonth) static final boolean
isLeapYear
(int year) Return true if the given year is a leap year.static final int
monthLength
(int year, int month) Return the number of days in the given month.static final int
previousMonthLength
(int year, int month) Return the length of a previous month of the Gregorian calendar.static int[]
timeToFields
(long time, int[] fields) static String
timeToString
(long time) Convenient method for formatting time to ISO 8601 style date string.static int
timeToYear
(long time)
-
Field Details
-
MIN_MILLIS
public static final long MIN_MILLIS- See Also:
-
MAX_MILLIS
public static final long MAX_MILLIS- See Also:
-
MILLIS_PER_SECOND
public static final int MILLIS_PER_SECOND- See Also:
-
MILLIS_PER_MINUTE
public static final int MILLIS_PER_MINUTE- See Also:
-
MILLIS_PER_HOUR
public static final int MILLIS_PER_HOUR- See Also:
-
MILLIS_PER_DAY
public static final int MILLIS_PER_DAY- See Also:
-
JULIAN_1_CE
private static final int JULIAN_1_CE- See Also:
-
JULIAN_1970_CE
private static final int JULIAN_1970_CE- See Also:
-
MONTH_LENGTH
private static final int[] MONTH_LENGTH -
DAYS_BEFORE
private static final int[] DAYS_BEFORE
-
-
Constructor Details
-
Grego
public Grego()
-
-
Method Details
-
isLeapYear
public static final boolean isLeapYear(int year) Return true if the given year is a leap year.- Parameters:
year
- Gregorian year, with 0 == 1 BCE, -1 == 2 BCE, etc.- Returns:
- true if the year is a leap year
-
monthLength
public static final int monthLength(int year, int month) Return the number of days in the given month.- Parameters:
year
- Gregorian year, with 0 == 1 BCE, -1 == 2 BCE, etc.month
- 0-based month, with 0==Jan- Returns:
- the number of days in the given month
-
previousMonthLength
public static final int previousMonthLength(int year, int month) Return the length of a previous month of the Gregorian calendar.- Parameters:
year
- Gregorian year, with 0 == 1 BCE, -1 == 2 BCE, etc.month
- 0-based month, with 0==Jan- Returns:
- the number of days in the month previous to the given month
-
fieldsToDay
public static long fieldsToDay(int year, int month, int dom) Convert a year, month, and day-of-month, given in the proleptic Gregorian calendar, to 1970 epoch days.- Parameters:
year
- Gregorian year, with 0 == 1 BCE, -1 == 2 BCE, etc.month
- 0-based month, with 0==Jandom
- 1-based day of month- Returns:
- the day number, with day 0 == Jan 1 1970
-
dayOfWeek
public static int dayOfWeek(long day) Return the day of week on the 1970-epoch day- Parameters:
day
- the 1970-epoch day (integral value)- Returns:
- the day of week
-
dayToYear
-
dayToFields
public static int[] dayToFields(long day, int[] fields) -
timeToFields
public static int[] timeToFields(long time, int[] fields) -
timeToYear
public static int timeToYear(long time) -
floorDivide
public static long floorDivide(long numerator, long denominator) -
floorDivideAndRemainer
-
getDayOfWeekInMonth
public static int getDayOfWeekInMonth(int year, int month, int dayOfMonth) -
timeToString
Convenient method for formatting time to ISO 8601 style date string.- Parameters:
time
- long time- Returns:
- ISO-8601 date string
-