betacode

Руководство Java MinguoDate

  1. MinguoDate
  2. MinguoDate Examples
  3. MinguoDate Methods

1. MinguoDate

Класс MinguoDate представляет даты в календарной системе Китайской Республики (Republic of China - ROC), также известной как календарь Minguo. Этот календарь используется с 1912 года - года основания Китайской Республики. 1 января 1912 года в календарной системе ISO эквивалентно 1 января 1 года в календаре Minguo. Термин "Minguo" просто означает "республика" (традиционный китайский: 民國; упрощенный китайский: 民国).
Minguo следует китайской традиции использования названия эпохи (era) и года правления, как и предшествовавшие китайские династии. Однако месяцы и дни пронумерованы в соответствии с календарем Gregorian (ISO). В этой календарной системе есть только 2 эры: BEFORE_ROC (Before Republic of China) и ROC (Republic of China), представляющие период до и после 1912 года. Фактически, китайский феодализм закончился 12 февраля 1912 года, когда Yaozhi (Пу И), последний император Китая, был вынужден отречься от престола.
Календарь ROC широко используется в Китайской Республике с 1912 года, в том числе в ранних официальных документах. Календарь ROC является официальным календарем, используемым на Тайване с 1945 года, а также принятым зарубежными китайскими и тайваньскими общинами. В биографиях и исторических исследованиях, опубликованных в Континентальном Китае в период с 1912 по 1949 год, также используется календарь ROC.

2. MinguoDate Examples

Преобразуйте дату ISO в дату Minguo и наоборот:
MinguoDate_from_ex1.java
LocalDate localDate = LocalDate.of(2000, 2, 15);
// Convert Minguo Date to ISO Date
MinguoDate minguoDate = MinguoDate.from(localDate);

System.out.printf("ISO Date: %s, Minguo Date: %s%n%n", localDate, minguoDate);  

minguoDate = MinguoDate.of(100, 1, 1);
// Convert ISO Date to Minguo Date
localDate = LocalDate.from(minguoDate);
System.out.printf("Minguo Date: %s, ISO Date: %s%n", minguoDate, localDate);
Output:
ISO Date: 2000-02-15, Minguo Date: Minguo ROC 89-02-15

Minguo Date: Minguo ROC 100-01-01, ISO Date: 2011-01-01
Например: Просмотр информации об эре (era) объекта MinguoDate.
MinguoDate_ex2.java
MinguoDate minguoDate = MinguoDate.of(50, 3, 15);
MinguoEra era =    minguoDate.getEra();

System.out.printf("Minguo Date: %s, ISO Date: %s%n", minguoDate, LocalDate.from(minguoDate));
System.out.println(" > Era: " + era.name() +", value: " + era.getValue());


minguoDate = MinguoDate.of(-10, 3, 15);  
 era =    minguoDate.getEra();
System.out.printf("%nMinguo Date: %s, ISO Date: %s%n", minguoDate, LocalDate.from(minguoDate));
System.out.println(" > Era: " + era.name() +", value: " + era.getValue());
Output:
Minguo Date: Minguo ROC 50-03-15, ISO Date: 1961-03-15
 > Era: ROC, value: 1

Minguo Date: Minguo BEFORE_ROC 11-03-15, ISO Date: 1901-03-15
 > Era: BEFORE_ROC, value: 0
  • Руководство Java MinguoEra

3. MinguoDate Methods

Factory methods:
public static MinguoDate now()  

public static MinguoDate now(ZoneId zone)  

public static MinguoDate now(Clock clock)  

public static MinguoDate of(int prolepticYear, int month, int dayOfMonth)

public static MinguoDate from(TemporalAccessor temporal)
Другие методы:
public MinguoChronology getChronology()   
public MinguoEra getEra()   

public int lengthOfMonth()
public ValueRange range(TemporalField field)
public long getLong(TemporalField field)  
public MinguoDate with(TemporalField field, long newValue)
public MinguoDate with(TemporalAdjuster adjuster)  
public MinguoDate plus(TemporalAmount amount)  
public MinguoDate minus(TemporalAmount amount)  
public MinguoDate plus(long amountToAdd, TemporalUnit unit)  
public MinguoDate minus(long amountToAdd, TemporalUnit unit)
public final ChronoLocalDateTime<MinguoDate> atTime(LocalTime localTime)  
public long toEpochDay()  
public ChronoPeriod until(ChronoLocalDate endDate)  
public long until(Temporal endExclusive, TemporalUnit unit)
В принципе, методы MinguoDate аналогичны методам LocalDate. Вы можете ознакомиться со статьей о классе LocalDate, чтобы получить больше примеров: