public enum HijriAlgorithm extends java.lang.Enum<HijriAlgorithm> implements VariantSource
Describes islamic calendar variants based on simplistic deterministic algorithms.
Most algorithms uses a leap year pattern within a 30-year-cycle. All years have 12 months where the month lengths are alternately 30 or 29 with the exception of last month which has 30 days in leap years else 29 days. The supported range in islamic years is 1-1600.
Note that all these algorithms have approximated nature only. There are deviations from sighting-based variants especially in short term. However, main advantage of algorithm-based variants is the fact that they can be applied into far past or future. Keep in mind that sighting-based calendars have a much more constrained valid range. For more background see The Arithmetical or Tabular Islamic Calendar.
| Enum Constant and Description |
|---|
EAST_ISLAMIC_ASTRO
Uses the leap year pattern {2, 5, 7, 10, 13, 15, 18, 21, 24, 26, 29} with astronomical (Thursday) epoch.
|
EAST_ISLAMIC_CIVIL
Uses the leap year pattern {2, 5, 7, 10, 13, 15, 18, 21, 24, 26, 29} with civil (Friday) epoch.
|
FATIMID_ASTRO
Uses the leap year pattern {2, 5, 8, 10, 13, 16, 19, 21, 24, 27, 29} with astronomical (Thursday) epoch.
|
FATIMID_CIVIL
Uses the leap year pattern {2, 5, 8, 10, 13, 16, 19, 21, 24, 27, 29} with civil (Friday) epoch.
|
HABASH_AL_HASIB_ASTRO
Uses the leap year pattern {2, 5, 8, 11, 13, 16, 19, 21, 24, 27, 30} with astronomical (Thursday) epoch.
|
HABASH_AL_HASIB_CIVIL
Uses the leap year pattern {2, 5, 8, 11, 13, 16, 19, 21, 24, 27, 30} with civil (Friday) epoch.
|
WEST_ISLAMIC_ASTRO
Uses the leap year pattern {2, 5, 7, 10, 13, 16, 18, 21, 24, 26, 29} with astronomical (Thursday) epoch.
|
WEST_ISLAMIC_CIVIL
Uses the leap year pattern {2, 5, 7, 10, 13, 16, 18, 21, 24, 26, 29} with civil (Friday) epoch.
|
| Modifier and Type | Method and Description |
|---|---|
java.lang.String |
getVariant()
Yields the variant name.
|
static HijriAlgorithm |
valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name.
|
static HijriAlgorithm[] |
values()
Returns an array containing the constants of this enum type, in
the order they are declared.
|
public static final HijriAlgorithm EAST_ISLAMIC_CIVIL
public static final HijriAlgorithm EAST_ISLAMIC_ASTRO
public static final HijriAlgorithm WEST_ISLAMIC_CIVIL
public static final HijriAlgorithm WEST_ISLAMIC_ASTRO
public static final HijriAlgorithm FATIMID_CIVIL
public static final HijriAlgorithm FATIMID_ASTRO
public static final HijriAlgorithm HABASH_AL_HASIB_CIVIL
public static final HijriAlgorithm HABASH_AL_HASIB_ASTRO
public static HijriAlgorithm[] values()
for (HijriAlgorithm c : HijriAlgorithm.values()) System.out.println(c);
public static HijriAlgorithm valueOf(java.lang.String name)
name - the name of the enum constant to be returned.java.lang.IllegalArgumentException - if this enum type has no constant with the specified namejava.lang.NullPointerException - if the argument is nullpublic java.lang.String getVariant()
VariantSourceYields the variant name.
getVariant in interface VariantSource