注意:西方国家的月份是0~11
一、基础
1、注意:Calendar类是抽象类型
2、初始化对象
通过调用Calendar中的静态方法进行初始化
packagecn.wt.day12;importjava.util.Calendar;public classDemon02 {public static voidmain(String[] args) {
Calendar cal=Calendar.getInstance();
System.out.println(cal);
}
}
二、进阶
1、get方法
作用:获取日历
语法:cal.get(int field)
field是Calendar类的常量,通过Calendar类直接调用
packagecn.wt.day12;importjava.util.Calendar;public classDemon02 {public static voidmain(String[] args) {//Calendar cal = Calendar.getInstance();//System.out.println(cal);
int year =getYear();
System.out.println(year);
}private static intgetYear() {
Calendar cal= Calendar.getInstance(); //多态
int year =cal.get(Calendar.YEAR);returnyear;
}
}
其它常量,看文档或源码
2、set方法
作用:设置日历
语法:set(int field, int value)
field Calendar中的常量; value 是设置的值
packagecn.wt.day12;importjava.util.Calendar;public classDemon02 {public static voidmain(String[] args) {//Calendar cal = Calendar.getInstance();//System.out.println(cal);
int year =getYear();
System.out.println(year);
setCal();
}private static voidsetCal() {
Calendar cal=Calendar.getInstance();
cal.set(Calendar.YEAR,2024); //设置指定的filed
System.out.println(cal.getTime()); //Calendar对象 -> Date对象
cal.set(2024, 12, 06); //overload 方法的重载
System.out.println(cal.getTime()); //Calendar对象 -> Date对象
}private static intgetYear() {
Calendar cal= Calendar.getInstance(); //多态
int year =cal.get(Calendar.YEAR);returnyear;
}
}
3、add方法
作用:对Calendar中的常量进行添加或减少
add(int field, int amount)
field Calendar中的常量; amount 增加或减少的值 增加为正 减少为-
packagecn.wt.day12;importjava.text.SimpleDateFormat;importjava.util.Calendar;public classDemon02 {public static voidmain(String[] args) {//Calendar cal = Calendar.getInstance();//System.out.println(cal);//获取
int year =getYear();
System.out.println(year);//设置日历
setCal();//增加日历
addCal();
}private static voidaddCal() {
Calendar cal= Calendar.getInstance(); //Calendar 对象
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String formatTime= sdf.format(cal.getTime()); //Calendar对象 -> Date 对象 -> String 对象
System.out.println(formatTime);
cal.add(Calendar.MONTH,-1); //月份减少一个月
String ft2 =sdf.format(cal.getTime());
System.out.println(ft2);
}private static voidsetCal() {
Calendar cal=Calendar.getInstance();
cal.set(Calendar.YEAR,2024); //设置指定的filed
System.out.println(cal.getTime()); //Calendar对象 -> Date对象
cal.set(2024, 12, 06); //overload 方法的重载
System.out.println(cal.getTime()); //Calendar对象 -> Date对象
}private static intgetYear() {
Calendar cal= Calendar.getInstance(); //多态
int year =cal.get(Calendar.YEAR);returnyear;
}
}
4、getTime方法
作用:Calendar对象->Date对象