java.util.Calendar类:日历类
Calendar类是一个抽象类,里边提供了很多操作日历字段的方法(YEAR/MONTH/DAY_OF_MONTH/HOUR)
Calendar类无法直接创建对象使用,里边有一个静态方法叫做getInstance(),该方法返回了Calendar类的子类对象。
static Calendar getInstance()
使用默认时区和语言环境获得一个日历。
public class DateCalendar {
public static void main(String[] args) {
/* Calendar c=Calendar.getInstance();
System.out.println(c);*/
demo01();
demo02();
demo03();
demo04();
}
/*
public int get(int field):返回给定日历字段的值
参数:传递指定的日历字段(YEAR,MONTH...)
返回值:日历字段代表的具体的值
*/
private static void demo01() {
Calendar c=Calendar.getInstance();
int year=c.get(Calendar.YEAR);
System.out.println(year);
int month=c.get(Calendar.MONTH);
System.out.println(month);
int date=c.get(Calendar.DAY_OF_MONTH);
System.out.println(date);
int hour=c.get(Calendar.HOUR);
System.out.println(hour);
}
/*
public void set(int field,int value):将给定的日历字段设置为给定值
参数:
int field:传递指定的日历字段(YEAR/MONTH...)
int value:给指定字段设置的值
*/
private static void demo02() {
Calendar c=Calendar.getInstance();
//设置年为1999年
c.set(Calendar.YEAR,1999);
c.set(Calendar.MONTH,9);
c.set(Calendar.DATE,9);
//同时设置年月日:
// c.set(2020,10,1);
int year=c.get(Calendar.YEAR);
System.out.println(year); //1999
}
//public abstract void add(int field,int amount):根据日历的规则,为给定的日历字段添加或减少指定的时间量
private static void demo03() {
Calendar c=Calendar.getInstance();
c.add(Calendar.YEAR,-2);
int year=c.get(Calendar.YEAR);
System.out.println(year);
}
//public Date getTime():返回一个表示此Calendar时间值的Date对象
//把日历对象转换为日期对象
private static void demo04() {
Calendar c=Calendar.getInstance();
Date date=c.getTime();
System.out.println(date); //Tue Sep 08 00:36:24 CST 2020
}
}