Calender类
java.util.Calendar类:日历类
Canlender类是一个抽象类,里面提供了很多操作日历字段的方法(YEAR、Months、day_OF_MNTH、HOUR)
Canleder类无法直接创建对象使用,里面有一个静态方法叫做getInstance(),该方法返回了Calendar类的子类对象
static Calendar getInstance() 使用默认时区和语言环境获得一个日历
Calender类的常用成员方法:
public int get(int firld);
返回给指定日历字段的值
public void set(int firld,int value);
将给定的日历字段设置为给定值
public abstract void add(int firld,int amount);
根据日历的规则,为给定的日历字段添加或减去指定的时间向量
public Date getTime();返回一个表示此Calendar时间值(从历元到现在的毫秒偏移量)的Date对象
成员方法的参数:
int field:日历类的字段,可以使用Calendar类的静态成员变量获取
public static final int YEAR = 1 ; 年
public static final int MONTH = 2 ; 月
public static final int DATE = 5 ; 月中的某一天
public static final int DAY_OF_MONTH = 5 ; 月中的某一天
public static final int HOUR = 10 ; 时
public static final int MINUTE = 12 ; 分
public static final int SECOND = 12 ; 秒
package Demo07;
import java.util.Calendar;
import java.util.Date;
public class Demo01Calendar {
public static void main(String[] args) {
demo02();
demo03();
demo04();
demo05();
}
/*
封装一个方法避免调用方法的时候要重复写相同代码,避免代码冗余
*/
private static void demo01(Calendar c) {
int year = c.get(Calendar.YEAR);
System.out.println(year);
int month = c.get(Calendar.MONTH);
System.out.println(month+1);//西方的月份:0-11, 东方的月份 :1-12
int day = c.get(Calendar.DAY_OF_MONTH);
c.get(Calendar.DATE);//Date和DAY_OF_MONTH获取的是一样的
System.out.println(day);
}
/*
public int get(int field):返回给定日历字段的值
参数:传递指定的日历字段(YEAR、MONTH、。。。)
返回值:日历字段代表的具体的值
*/
private static void demo02() {
Calendar c = Calendar.getInstance();
demo01(c);
}
/*
public void set(int field , int value): 将给定的日历字段设置为给定值
参数:
int field:传递指定的日历字段(YEAR,MONTH。。。)
int value:给指定字段设置的值
*/
private static void demo03() {
Calendar c = Calendar.getInstance();
c.set(Calendar.YEAR, 2088);//设置年为2088年
demo01(c);
c.set(2000, 1, 1);//同时设置年月日
System.out.println(c.get(Calendar.YEAR)+"-"+c.get(Calendar.MONTH)+"-"+c.get(Calendar.DATE));
}
/*
public abstract void add(int field,int amount):根据日历的规则,给指定的日历字段添加或者减去指定的时间量
把指定的字段增加/减少指定的值
参数:
int field:传递指定的日历字段(YEAR,MOUNTH。。。)
int amount:增加/减少指定的值
正数:增加
负数:减少
*/
private static void demo04() {
Calendar c = Calendar.getInstance();
c.add(Calendar.YEAR, -1);
demo01(c);
}
/*
public Date getTime();
把日历对象转换为日期对象
*/
public static void demo05() {
Calendar c = Calendar.getInstance();
Date time = c.getTime();
System.out.println(time);
}
}
input: