📌  相关文章
📜  Java中的 ChronoZonedDateTime getChronology() 方法及示例(1)

📅  最后修改于: 2023-12-03 14:42:45.765000             🧑  作者: Mango

Java中的 ChronoZonedDateTime getChronology() 方法及示例

1. 简介

ChronoZonedDateTime接口定义了访问与时区有关的日期和时间的方法。 getChronology() 方法返回与此日期时间关联的日历系统。

2. 语法
Chronology getChronology()
3. 示例

以下示例演示了如何使用 ChronoZonedDateTime 接口及其 getChronology() 方法。

import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.time.chrono.Chronology;

public class ChronoZonedDateTimeExample {
    public static void main(String[] args) {

        // 创建一个本地日期时间
        LocalDateTime localDateTime = LocalDateTime.now();
        System.out.println("LocalDateTime : " + localDateTime);

        // 根据所选时区创建一个ZonedDateTime对象
        ZoneId zoneId = ZoneId.of("Asia/Kolkata");
        ZonedDateTime zonedDateTime = ZonedDateTime.of(localDateTime, zoneId);
        System.out.println("ZonedDateTime : " + zonedDateTime);

        // 获取其关联的日历系统
        Chronology chronology = zonedDateTime.getChronology();
        System.out.println("Chronology : " + chronology);

    }
}

输出:

LocalDateTime : 2021-08-22T13:28:18.397488900
ZonedDateTime : 2021-08-22T13:28:18.397488900+05:30[Asia/Kolkata]
Chronology : ISO
4. 解析
  • LocalDateTime.now() 返回当前日期和时间的本地实例。
  • ZoneId.of("Asia/Kolkata")从给定的字符串创建一个 ZoneId。
  • ZonedDateTime.of(localDateTime, zoneId) 使用本地日期时间和时区创建一个 ZonedDateTime的实例。
  • zonedDateTime.getChronology()方法返回该 ZonedDateTime实例的 Chronology

在上面的示例中,Chronology为ISO。ISO(国际标准组织)是目前使用最广泛的日历系统。通过 ChronoZonedDateTime 接口的 getChronology() 方法,我们可以获取与日期时间关联的日历系统,从而进行日期时间的处理和计算。