Calender类
日历类,也是用来处理时间日期的,与Date类似。由于Calendar类是个抽象类,所以无法直接定义Calendar对象,要用getInstance()方法定义父类对象引用子类对象,即多态。
对象定义的方法: Calendar calendar = Calendar.getInstance(); //getInstance()方法,可以得到Calendar类的子类
Calendar类中常用的成员方法:
- public int get(int field):返回给定日历字段的值。
- public void set(int field, int value):将给定的日历字段设置为给定值。
- public abstract void add(int field,int amount):根据日历的规则,为给定的日历字段添加或减去指定的时间量。(amount:正数增加,负数减少)
- public Date getTime():返回一个表示此Calendar时间值(从历元到现在的毫秒偏移量)的Date对象。
这些日历字段都是静态static成员变量,所以用类名称就可以对其进行调用。
get()方法 :
Calendar calendar = Calendar.getInstance();
int year=calendar.get(Calendar.YEAR);
System.out.println(year);
int month=calendar.get(Calendar.MONTH);
System.out.println(month+1);//西方月份0-11,东方月份:1-12
int day=calendar.get(Calendar.DATE);
System.out.println(day);
输出结果:(今天是2020/12/17)
2020
12
17
set()方法:
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.YEAR,1996);
int year=calendar.get(Calendar.YEAR);
System.out.println(year);
//calendar.set(1996,10,31);由于重载,也可以同时设置年月日。
输出结果:
1996
add()方法:
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.YEAR,1996);
calendar.add(Calendar.YEAR,4);//add()方法中,正数为加,负数为减。
int year=calendar.get(Calendar.YEAR);
System.out.println(year);
输出结果:
2000