Java将两位年份转换为全年

1、利用Joda-Time库.

DateTimeFormatter TWO_YEAR_FORMATTER = DateTimeFormat.forPattern("yy");
int year = LocalDate.parse("21"",TWO_YEAR_FORMATTER).getYear();
System.out.println(year);

输出结果:2021;

2、利用java.time API

DateTimeFormatter TWO_YEAR_FORMATTER = DateTimeFormat.forPattern("yy");
int year = TWO_YEAR_FORMATTER.parse("99").get(ChronoField.YEAR);
System.out.println(year);

输出结果:2021;

关于Enum ChronoField

实现的所有接口Serializable , Comparable<ChronoField> , TemporalField

public enum ChronoField extends Enum<ChronoField> implements TemporalField
一组标准字段。

这组字段提供基于字段的访问来操纵日期,时间或日期时间。 可以通过实现TemporalField来扩展标准字段集。

这些字段旨在适用于多个日历系统。 例如,大多数非ISO日历系统将日期定义为年,月和日,只是略有不同的规则。 每个字段的文档说明了它的运作方式。

从jdk1.8开始,具体可参考API。

 
原文地址:https://www.cnblogs.com/jk-jun/p/15223460.html