模块  java.base
软件包  java.time.temporal

Enum ChronoUnit

  • 实现的所有接口
    SerializableComparable<ChronoUnit>TemporalUnit

    public enum ChronoUnitextends Enum<ChronoUnit>implements TemporalUnit
    一组标准的日期时间单位。

    这组单元提供基于单元的访问来操纵日期,时间或日期时间。 可以通过实施TemporalUnit来扩展标准单元集。

    这些单元适用于多个日历系统。 例如,大多数非ISO日历系统定义年,月和日的单位,只是略有不同的规则。 每个单元的文档解释了它的运作方式。

    实现要求:
    这是一个最终的,不可变的和线程安全的枚举。
    从以下版本开始:
    1.8
    • Enum Constant Detail

      • NANOS

        public static final ChronoUnit NANOS
        代表纳秒概念的单位,是支持的最小时间单位。 对于ISO日历系统,它等于第二个单元的1,000,000,000个部分。
      • MICROS

        public static final ChronoUnit MICROS
        表示微秒概念的单位。 对于ISO日历系统,它等于第二单元的第1,000,000部分。
      • MILLIS

        public static final ChronoUnit MILLIS
        表示毫秒概念的单位。 对于ISO日历系统,它等于第二单元的第1000部分。
      • SECONDS

        public static final ChronoUnit SECONDS
        表示第二个概念的单位。 对于ISO日历系统,它等于SI系统中的第二个系统,除了闰秒。
      • MINUTES

        public static final ChronoUnit MINUTES
        表示一分钟概念的单位。 对于ISO日历系统,它等于60秒。
      • HOURS

        public static final ChronoUnit HOURS
        表示一小时概念的单位。 对于ISO日历系统,它等于60分钟。
      • HALF_DAYS

        public static final ChronoUnit HALF_DAYS
        代表AM / PM中使用的半天概念的单位。 对于ISO日历系统,它等于12小时。
      • DAYS

        public static final ChronoUnit DAYS
        代表一天概念的单位。 对于ISO日历系统,它是从午夜到午夜的标准日。 估计一天的24 Hours时间为24 Hours

        当与其他日历系统一起使用时,它必须对应于地球上太阳升起和设置所定义的日期。 不要求天数从午夜开始 - 在日历系统之间进行转换时,日期应该在中午相当。

      • WEEKS

        public static final ChronoUnit WEEKS
        表示一周概念的单位。 对于ISO日历系统,它等于7天。

        当与其他日历系统一起使用时,它必须对应于整数天。

      • MONTHS

        public static final ChronoUnit MONTHS
        代表一个月概念的单位。 对于ISO日历系统,月份的长度因月份而异。 估计一个月的持续时间是365.2425 Days十二分之一。

        当与其他日历系统一起使用时,它必须对应于整数天。

      • YEARS

        public static final ChronoUnit YEARS
        代表一年概念的单位。 对于ISO日历系统,它等于12个月。 估计一年的持续时间为365.2425 Days

        当与其他日历系统一起使用时,它必须对应于整数天或月,大致等于地球绕太阳通过的年份。

      • DECADES

        public static final ChronoUnit DECADES
        代表十年概念的单位。 对于ISO日历系统,它等于10年。

        当与其他日历系统一起使用时,它必须对应于整数天,并且通常是整数年。

      • CENTURIES

        public static final ChronoUnit CENTURIES
        代表一个世纪概念的单位。 对于ISO日历系统,它等于100年。

        当与其他日历系统一起使用时,它必须对应于整数天,并且通常是整数年。

      • MILLENNIA

        public static final ChronoUnit MILLENNIA
        代表千年概念的单位。 对于ISO日历系统,它等于1000年。

        当与其他日历系统一起使用时,它必须对应于整数天,并且通常是整数年。

      • ERAS

        public static final ChronoUnit ERAS
        代表一个时代概念的单位。 ISO日历系统没有时代,因此无法将日期添加到日期或日期时间。 该时代的估计持续时间被人为定义为1,000,000,000 Years

        与其他日历系统一起使用时,对设备没有限制。

      • FOREVER

        public static final ChronoUnit FOREVER
        代表永恒概念的人工单位。 这主要与TemporalField一起用于表示无限字段,例如年份或时代。 该单位的估计持续时间被人为定义为Duration支持的最大持续时间。
    • 方法详细信息

      • values

        public static ChronoUnit[] values()
        按照声明的顺序返回一个包含此枚举类型常量的数组。 此方法可用于迭代常量,如下所示:
          for (ChronoUnit c : ChronoUnit.values())    System.out.println(c); 
        结果
        包含此枚举类型常量的数组,按声明的顺序排列
      • valueOf

        public static ChronoUnit valueOf​(String name)
        返回具有指定名称的此类型的枚举常量。 该字符串必须与用于声明此类型中的枚举常量的标识符完全匹配。 (不允许使用无关的空白字符。)
        参数
        name - 要返回的枚举常量的名称。
        结果
        具有指定名称的枚举常量
        异常
        IllegalArgumentException - 如果此枚举类型没有指定名称的常量
        NullPointerException - 如果参数为null
      • getDuration

        public Duration getDuration()
        获取ISO日历系统中此单元的估计持续时间。

        本课程中的所有单元都有估计的持续时间。 由于夏令时,天数不同,而月份有不同的长度。

        Specified by:
        getDuration在界面 TemporalUnit
        结果
        此单位的估计持续时间,不为空
      • isDurationEstimated

        public boolean isDurationEstimated()
        检查单位的持续时间是否为估计值。

        此类中的所有时间单位都被认为是准确的,而此类中的所有日期单位都被认为是估计的。

        此定义忽略闰秒,但认为天数因夏令时而异,月份的长度不同。

        Specified by:
        isDurationEstimated在界面 TemporalUnit
        结果
        如果估计持续时间则为true,如果准确则为false
      • isDateBased

        public boolean isDateBased()
        检查此单位是否为日期单位。

        从天到日的所有单位都是基于日期的。 基于时间的单位和FOREVER返回false。

        Specified by:
        isDateBased在界面 TemporalUnit
        结果
        如果是日期单位则为true,如果是时间单位则为false
      • isTimeBased

        public boolean isTimeBased()
        检查此单位是否为时间单位。

        从纳米到半天的所有单位都是基于时间的。 基于日期的单位和FOREVER返回false。

        Specified by:
        isTimeBased在界面 TemporalUnit
        结果
        true if a time unit, false if a date unit