1、获取当前日期
Calendar cal = Calendar.getInstance();
2、只展示今天年月日
Calendar cal = Calendar.getInstance();
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MILLISECOND, 0);
3、昨天开始日期
Calendar cal = Calendar.getInstance();
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MILLISECOND, 0);
// DAY_OF_WEEK、DAY_OF_MONTH、DAY_OF_YEAR、DATE在add()方法中没有区别,但是在get方法中有区别,毕竟day相应和的条件不同
cal.add(Calendar.DAY_OF_WEEK, -1);
4、昨天结束日期
Calendar cal = Calendar.getInstance();
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MILLISECOND, 0);
5、本周开始日期
Calendar cal = Calendar.getInstance();
// 保证星期几的数字就是几
int day_of_week = cal.get(Calendar.DAY_OF_WEEK) - 1;
if (day_of_week == 0) {
day_of_week = 7;
}
cal.add(Calendar.DATE, -day_of_week + 1);
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MILLISECOND, 0);
6、本周结束日期
Calendar cal = Calendar.getInstance();
// 保证星期几的数字就是几
int day_of_week = cal.get(Calendar.DAY_OF_WEEK) - 1;
if (day_of_week == 0) {
day_of_week = 7;
}
cal.add(Calendar.DATE, 7 - day_of_week + 1);
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MILLISECOND, 0);
7、距离今天XXX天的日期
Calendar cal = Calendar.getInstance();
// XXX可以是正数或者负数
cal.add(Calendar.DAY_OF_WEEK, XXX);
8、一周之后的现在
Calendar cal = Calendar.getInstance();
cal.add(Calendar.DAY_OF_WEEK, 7);
9、add()和roll()的区别
add()可以让时间跨越月份、年份等,而roll()不能跨越月份,更别提年份了
Calendar使用
最新推荐文章于 2024-08-07 07:00:00 发布
本文详细介绍了如何使用Java的Calendar类获取当前日期、只显示年月日、获取昨天开始和结束日期、本周开始和结束日期,以及进行任意日期加减操作。同时,解释了add()和roll()方法的区别,add()允许跨越月份和年份,而roll()则不会。
摘要由CSDN通过智能技术生成