Calendar 使用

Calendar 类是一个抽象类,在java.util.Calendar包中,它为特定瞬间与一组诸如 YEARMONTHDAY_OF_MONTHHOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。

/* 获取年月日星期 */
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());// 设置当前日期
int year = calendar.get(Calendar.YEAR);// 获取年份
System.out.println("年year:" + year);
int month = calendar.get(Calendar.MONTH) + 1;// 获取月
System.out.println("月month:" + month);
int date = calendar.get(Calendar.DATE);// 获取日
System.out.println("日date:" + date);
int week = calendar.get(Calendar.DAY_OF_WEEK);// 获取星期
System.out.println("星期week:" + week);
/* 获取这个月最后1天 */
calendar.clear();
calendar.set(Calendar.YEAR, year);
calendar.set(Calendar.MONTH, month - 1);// 这个月
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));// 最后1天
String ERDAT = sdf.format(calendar.getTime());// 这个月最后1天
System.out.println("这个月最后1天:" + ERDAT);
/* 获取下个月第1天 */
calendar.clear();
calendar.set(Calendar.YEAR, year);
calendar.set(Calendar.MONTH, month);// 下个月
calendar.set(Calendar.DAY_OF_MONTH, 1);// 第一天
String ERDAT2 = sdf.format(calendar.getTime());// 上月最后一日
System.out.println("下个月第1天:" + ERDAT2);

参考文档:http://www.runoob.com/manual/jdk1.6/java/util/Calendar.html

原文地址:https://www.cnblogs.com/ooo0/p/9803530.html