Calendar:为某一时刻和一组字段之间的转换提供了一些方法,并为其操作日历字段提供了一些方法。注:Calendar为抽象类,抽象类的特征详情请看 此篇——抽象类和接口
Calendar的用法:Calendar提功了一个类方法getinstance用于获取Calendar对象,其日历字段已使用当前日期和时间的初始化:
格式如下:
Calendar c = Calendar.getInstance();
获取日期的范例:
package API;
//获取当前日期
import java.util.Calendar;
public class Date_Example {
public static void main(String[] args) {
Calendar c=Calendar.getInstance();
int year=c.get(Calendar.YEAR);
int month=c.get(Calendar.MONTH)+1;//同数组一样从零开始但实际上不存在0月故+1;
int date=c.get(Calendar.DATE);
System.out.println(year+"年\t"+month+"月\t"+date+"日");
}
}
Calendar常用的日期字段:
日历字段 | value |
YEAR | 当前年份 |
MONTH | 当前月份(同数组一样从零开始但实际上不存在0月故+1) |
DATE | 一个月中的某天 |
WEEK_OF_YEAR | 当前年中的第几个星期 |
WEEK_OF_MONTH | 当前月中的第几个星期 |
SECOND | 一分钟中的第几秒 |
DAY_OF_YEAR | 一年中的第几天 |
DAY_OF_MONTH | 一个月中的第几天 |
DAY_OF_WEEK | 一个周中的第几天 |
DAY_OF_WEEK_IN_MONTH | 当前月中的第几个星期(注:当前月第1-7天是第一个星期,8-14是第二个星期,以此类推) |
HOUR_OF_DAY | 一天中的第几小时 |
MINUTE | 一小时中的第几分钟 |
MILLISECOND | 一秒中的第几毫秒 |
Calendar的常用方法:
在创建日期对象之后:以Calendar c = Calendar.getInstance();为例
方法 | 说明 |
c.set(year,month,date,……); 也可以单个字段进行设置: 例如:c.set(Calendar.YEAR ,2022); | 设置时间(set():单纯的设定日期,如果设定的日期不存在的话,他会向下移动。) |
c.add(Calendar.SECOND,1); | 计算时间(但add 时间时,会将不存在的日期归为当月日历的最后一天,此外,与 set() 不同,add() 强迫日历系统立即重新计算日历的毫秒数和所有字段。正值加设定时间,负值倒推) |