Java Calendar类用法总结
Calendar类的创建
Calendar calendar = Calendar.getInstance();
Calendar类日期的设置和获取
- 日期的设置
Calendar类不设置时间的话默认为当前时间
//1.年月日时分秒单独设置
//calendar.set(field, value); //field取值见下表
//设置日期 2020年5月11日15点10分30秒
calendar.set(Calendar.YEAR, 2020);
calendar.set(Calendar.MONTH, 4); //月份从0~11 0是1月份
calendar.set(Calendar.DAY_OF_MONTH, 11);
calendar.set(Calendar.HOUR, 15);
calendar.set(Calendar.MINUTE, 10);
calendar.set(Calendar.SECOND, 30);
//2.日期一次设置
// calendar.set(year, month, date);
// calendar.set(year, month, date, hourOfDay, minute);
// calendar.set(year, month, date, hourOfDay, minute, second);
calendar.set(2020, 4, 11, 15, 10,30);
//输出日期
System.out.println(calendar.getTime());
输出结果:Mon May 11 14:52:27 CST 2020
- 日期的获取
// calendar.get(field);
// calendar.getTime();
System.out.println(calendar.get(Calendar.MONTH)); //获取月
System.out.println(calendar.get(Calendar.MINUTE)); //获取分
System.out.println(calendar.getTime()); //获取完整时间
输出结果:
4
10
Mon May 11 15:10:30 CST 2020
Calendar类日期的增加
// calendar.add(field, amount);
System.out.println(calendar.getTime()); //2020年
calendar.add(Calendar.YEAR, 2); //年数加2
System.out.println(calendar.getTime()); //2022年
输出结果:
Mon May 11 15:10:30 CST 2020
Wed May 11 15:10:30 CST 2022
Field常用取值表
取值 | 释义 | 注释 |
---|---|---|
Calendar.YEAR | 年 | |
Calendar.MONTH | 月 | 月份取值0~11,0表示1月份 |
Calendar.DAY_OF_MONTH | 日,一月中的第几天 | |
Calendar.HOUR_OF_DAY | 时, 一天中的第几小时 | 24小时制 |
Calendar.MINUTE | 分 | |
Calendar.SECOND | 秒 | |
Calendar.DAY_OF_YEAR | 一年中的第几天 | |
Calendar.DATE | 一月中的第几天 | 与Calendar.DAY_OF_MONTH 同义 |
Calendar.DAY_OF_WEEK | 一星期中的第几天 | 取值1~7,1表示星期日 |
Calendar.HOUR | 一天中的第几小时 | 12小时制(不推荐使用) |
完整代码
package time;
import java.util.Calendar;
import java.util.Date;
public class Calendar_sum {
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();
// calendar.set(field, value);
calendar.set(Calendar.YEAR, 2020);
calendar.set(Calendar.MONTH, 4); //月份从0~11 0是1月份
calendar.set(Calendar.DAY_OF_MONTH, 11);
calendar.set(Calendar.HOUR_OF_DAY, 15);
calendar.set(Calendar.MINUTE, 10);
calendar.set(Calendar.SECOND, 30);
// calendar.set(year, month, date);
// calendar.set(year, month, date, hourOfDay, minute);
// calendar.set(year, month, date, hourOfDay, minute, second);
// calendar.get(field);
// calendar.getTime();
// calendar.set(2020, 4, 11, 15, 10,30);
System.out.println("获取月:" + calendar.get(Calendar.MONTH));
System.out.println("获取分:" + calendar.get(Calendar.MINUTE));
System.out.println("获取完整时间:" + calendar.getTime());
System.out.println("--------------");
Calendar cal = Calendar.getInstance();
System.out.println("当前时间:" + cal.getTime());
System.out.println("--------------");
System.out.println(calendar.getTime()); //2020年
calendar.add(Calendar.YEAR, 2); //年数加2
System.out.println("增加年数后的时间:" + calendar.getTime()); //2022年
}
}