Calendar 实现当前日期对应 年、月、周的最后一天可设置时分秒23:59:59

1、当前日期所在月的最后一天 精确到时分秒23:59:59
//日期格式化
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = new Date();
System.out.println(sdf.format(date));//2024-06-06 11:19:31

//设置calendar
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.set(Calendar.HOUR_OF_DAY, 23);//设置小时
calendar.set(Calendar.MINUTE, 59);//设置分钟
calendar.set(Calendar.SECOND, 59);//设置秒
calendar.set(Calendar.MILLISECOND, 0);//设置毫秒

System.out.println("------当前日期所在月的最后一天 精确到时分秒23:59:59--------");
int actualMaximum = calendar.getActualMaximum(calendar.DAY_OF_MONTH);
calendar.set(Calendar.DAY_OF_MONTH, actualMaximum);
System.out.println(calendar.getTime());//打印:Sun Jun 30 23:59:59 CST 2024
System.out.println(sdf.format(calendar.getTime()));//2024-06-30 23:59:59
2、当前日期所在年的最后一天 精确到时分秒23:59:59 
 //设置calendar请看第一个案例 .......
 System.out.println("------当前日期所在年的最后一天 精确到时分秒23:59:59--------");
 int actualMaximum = calendar.getActualMaximum(calendar.DAY_OF_YEAR);
 calendar.set(Calendar.DAY_OF_YEAR, actualMaximum);
 System.out.println(calendar.getTime());//打印:Tue Dec 31 23:59:59 CST 2024
 System.out.println(sdf.format(calendar.getTime()));//2024-12-31 23:59:59
3、当前日期所在周的最后一天(周六 +1天得到周日) 精确到时分秒23:59:59
//设置calendar请看第一个案例 .......
System.out.println("------当前日期所在周的最后一天(周六 +1天得到周日) 精确到时分秒23:59:59--------");
int actualMaximum = calendar.getActualMaximum(calendar.DAY_OF_WEEK);
calendar.set(Calendar.DAY_OF_WEEK, actualMaximum);//当前周的最后一天(按照西方日期最后一天的日期是周六)
calendar.add(calendar.DATE,1);// +1天,等于当前日期的周日,这句话不写打印的是当前日期的周六
System.out.println(calendar.getTime());//打印的是周日:Sun Jun 09 23:59:59 CST 2024
System.out.println(sdf.format(calendar.getTime()));//2024-06-09 23:59:59
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值