Java 中的日期时间字段是什么?
时间字段是日期时间的字段,例如一年中的月份或一分钟中的小时。这些字段由 TemporalField 接口表示,ChronoField 类实现了此接口。
以下是 ChronoField 类支持的关于日期的各种时间字段的列表:
字段 | 描述 |
---|---|
ALIGNED_DAY_OF_WEEK_IN_MONTH | 此字段表示一个月中的星期几。 |
ALIGNED_DAY_OF_WEEK_IN_YEAR | 此字段表示一年中对齐的星期几。 |
ALIGNED_WEEK_OF_MONTH | 此字段表示一个月中对齐的星期。 |
ALIGNED_WEEK_OF_YEAR | 此字段表示一年中对齐的星期。 |
DAY_OF_MONTH | 此字段表示一个月中的某一天。 |
DAY_OF_WEEK | 此字段表示一周中的某一天。 |
DAY_OF_YEAR | 此字段表示一年中的某一天。 |
EPOCH_DAY | 此字段表示一年的纪元日。 |
ERA | 此字段表示年的纪元。 |
YEAR | 此字段表示年份。 |
YEAR_OF_ERA | 此字段表示纪元的年份。 |
LocalDate 和 LocaldateTime 类的 get() 或 getLong() 方法接受时间字段作为参数,并获取当前对象中给定字段的值。
示例
import java.time.LocalDate; import java.time.temporal.ChronoField; public class Demo { public static void main(String args[]) { //Instantiating the LocalDate class LocalDate lDate = LocalDate.now(); int field = lDate.get(ChronoField.DAY_OF_MONTH); System.out.println("Day of the month: "+field); field = lDate.get(ChronoField.DAY_OF_WEEK); System.out.println("Day of the month: "+field); field = lDate.get(ChronoField.DAY_OF_YEAR); System.out.println("Day of the month: "+field); long epoch = lDate.getLong(ChronoField.EPOCH_DAY); System.out.println("Day of the month: "+epoch); field = lDate.get(ChronoField.ALIGNED_DAY_OF_WEEK_IN_MONTH); System.out.println("Week in the month: "+field); field = lDate.get(ChronoField.ALIGNED_DAY_OF_WEEK_IN_YEAR); System.out.println("Day of the week in an year: "+field); field = lDate.get(ChronoField.ERA); System.out.println("Era: "+field); } }
输出
Day of the month: 11 Day of the month: 3 Day of the month: 316 Day of the month: 18577 Week in the month: 4 Day of the week in an year: 1 Era: 1
示例
import java.time.DayOfWeek; import java.time.LocalTime; import java.time.Month; import java.time.Year; import java.time.temporal.ChronoField; public class Demo { public static void main(String args[]) { //Instantiating the LocalDateTime class LocalTime lTime = LocalTime.now(); System.out.println(lTime); int field = Year.of(2019).get(ChronoField.YEAR); System.out.println("Year: "+field); field = Month.of(8).get(ChronoField.MONTH_OF_YEAR); System.out.println("Year: "+field); field = DayOfWeek.of(3).get(ChronoField.DAY_OF_WEEK); System.out.println("Year: "+field); } }
输出
20:01:43.171 Year: 2019 Year: 8 Year: 3
广告