Java从入门到放弃 · Calendar类详解

338 阅读2分钟

“这是我参与8月更文挑战的第16天,活动详情查看: 8月更文挑战

Calendar日历类

Calendar 类是一个抽象类,位于java.util包下, 使用时需导入

import java.util.Calendar;

Calendar 类为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。

Calendar 类提供了一个类方法 getInstance,以获得此类型的一个通用的对象。Calendar 的 getInstance 方法返回一个 Calendar 对象,其日历字段已由当前日期和时间初始化。

我们先来看一下这个方法。

public static Calendar getInstance()

使用默认时区和语言环境获得一个日历。返回的 Calendar 基于当前时间,使用了默认时区和默认语言环境。

返回:
一个 Calendar。
Calendar calendar  = Calendar.getInstance();
System.out.println(calendar);

image.png 可以看到,输出的结果中包含很多日历字段。

这里给出一些字段表示,其他的掘友可以通过API文档进一步了解。

DAY_OF_MONTH        getset 的字段数字,指示一个月中的某天。
      	                                        
DAY_OF_WEEK        getset 的字段数字,指示一个星期中的某天。

DAY_OF_YEAR        getset 的字段数字,指示当前年中的天数。

MINUTE        getset 的字段数字,指示一小时中的分钟。

SECOND        getset 的字段数字,指示一分钟中的秒。

YEAR        指示年的 getset 的字段数字。

HOUR        getset 的字段数字,指示上午或下午的小时。	   

HOUR_OF_DAY        getset 的字段数字,指示一天中的小时。

成员方法

public int get(int field)
返回给定日历字段的值。
参数:
field - 给定的日历字段。
public void set(int field,int value)

将给定的日历字段设置为给定值。

参数:
field - 给定的日历字段。
value - 给定日历字段所要设置的值。
public abstract void add(int field,int amount)

根据日历的规则,为给定的日历字段添加或减去指定的时间量。例如,要从当前日历时间减去 5 天,可以通过调用以下方法做到这一点: 
add(Calendar.DAY_OF_MONTH, -5)。 

参数:
field - 日历字段。
amount - 为字段添加的日期或时间量。
public final Date getTime()

返回一个表示此 Calendar 时间值(从历元至现在的毫秒偏移量)的 Date 对象。

写在最后

好了,Calendar类的介绍就到这里啦,亲自动手试一试吧!

以上内容如有不正之处,欢迎掘友们批评指正。