Support for calendar systems other than the default ISO.
The main API is based around the calendar system defined in ISO-8601. This package provides support for alternate systems.
The supported calendar systems includes:
It is intended that applications use the main API whenever possible, including code to read and write
from a persistent data store, such as a database, and to send dates and times across a network.
This package is then used at the user interface level to deal with localized input/output.
See ChronoLocalDate for a full discussion of the issues.
This example creates and uses a date in a non-ISO calendar system.
// Print the Thai Buddhist date
ChronoLocalDate now1 = ThaiBuddhistChronology.INSTANCE.now();
int day = now1.get(ChronoField.DAY_OF_MONTH);
int dow = now1.get(ChronoField.DAY_OF_WEEK);
int month = now1.get(ChronoField.MONTH_OF_YEAR);
int year = now1.get(ChronoField.YEAR);
System.out.printf(" Today is %s %s %d-%s-%d%n", now1.getChronology().getId(),
dow, day, month, year);
// Enumerate the list of available calendars and print today for each
Set<String> names = Chronology.getAvailableIds();
for (String name : names) {
Chronology<?> chrono = Chronology.of(name);
ChronoLocalDate<?> date = chrono.now();
System.out.printf(" %20s: %s%n", chrono.getId(), date.toString());
}
// Print today's date and the last day of the year for the Thai Buddhist Calendar.
ChronoLocalDate first = now1
.with(ChronoField.DAY_OF_MONTH, 1)
.with(ChronoField.MONTH_OF_YEAR, 1);
ChronoLocalDate last = first
.plus(1, ChronoUnit.YEARS)
.minus(1, ChronoUnit.DAYS);
System.out.printf(" %s: 1st of year: %s; end of year: %s%n", last.getChronology().getId(),
first, last);
| Interface | Description |
|---|---|
| Era |
An era of the time-line.
|
| Class | Description |
|---|---|
| AbstractChronology |
An abstract implementation of
Chronology. |
| ChronoLocalDate |
A date without time-of-day or time-zone in an arbitrary chronology, intended
for advanced globalization use cases.
|
| ChronoLocalDateTime<D extends ChronoLocalDate> |
A date-time without a time-zone in an arbitrary chronology, intended
for advanced globalization use cases.
|
| Chronology |
A calendar system, used to organize and identify dates.
|
| ChronoPeriod |
A date-based amount of time, such as '3 years, 4 months and 5 days' in an
arbitrary chronology, intended for advanced globalization use cases.
|
| ChronoZonedDateTime<D extends ChronoLocalDate> |
A date-time with a time-zone in an arbitrary chronology,
intended for advanced globalization use cases.
|
| HijrahChronology |
The Hijrah calendar system.
|
| HijrahDate |
A date in the Hijrah calendar system.
|
| IsoChronology |
The ISO calendar system.
|
| JapaneseChronology |
The Japanese Imperial calendar system.
|
| JapaneseDate |
A date in the Japanese Imperial calendar system.
|
| JapaneseEra |
An era in the Japanese Imperial calendar system.
|
| MinguoChronology |
The Minguo calendar system.
|
| MinguoDate |
A date in the Minguo calendar system.
|
| ThaiBuddhistChronology |
The Thai Buddhist calendar system.
|
| ThaiBuddhistDate |
A date in the Thai Buddhist calendar system.
|
| Enum | Description |
|---|---|
| HijrahEra |
An era in the Hijrah calendar system.
|
| IsoEra |
An era in the ISO calendar system.
|
| MinguoEra |
An era in the Minguo calendar system.
|
| ThaiBuddhistEra |
An era in the Thai Buddhist calendar system.
|
Copyright © 2007–2018 ThreeTen.org. All rights reserved.