java 日期 下一周的第一天 最后一天 分别是多少号

java 日期 下一周的第一天 最后一天 分别是多少号,第1张

国外一周的开始是从星期日,结束是星期六;而国内一周开始为星期一,结束为星期日,所以分别按两个方式处理:

1,国外日期格式

代码为:

Calendar calendar = new GregorianCalendar(); //获取当前日期

Systemoutprintln(calendargetTime()); //打印当前日期

calendaradd(CalendarDAY_OF_WEEK,7-calendarget(CalendarDAY_OF_WEEK)+1);

Systemoutprintln(calendargetTime()); //打印下周日的日期

calendaradd(CalendarDAY_OF_WEEK, 6);

Systemoutprintln(calendargetTime()); //打印下周六的日期

代码解释:

Calendar 自身带了很多对日期处理的方法,add方法是将当前日期按照年、月、日向后增加时间。“calendarget(CalendarDAY_OF_WEEK)”意思是今天是本周的第几天。“7-calendarget(CalendarDAY_OF_WEEK)"意思为本周还剩多少天,再加1表示距离下周星期日还有多少天。calendaradd(CalendarDAY_OF_WEEK,7-calendarget(CalendarDAY_OF_WEEK)+1)意思是在今天的日期上向后推进到下周日,Calendar 会自动进行运算。此时Calendar保存的是下周日的日期,计算出下周六的日期只需再加6即可。

2,国内日期格式

代码为:

Calendar calendar = new GregorianCalendar(); //获取当前日期

Systemoutprintln(calendargetTime()); //打印当前日期

calendaradd(CalendarDAY_OF_WEEK,7-calendarget(CalendarDAY_OF_WEEK)+2);

Systemoutprintln(calendargetTime()); //打印下周一的日期

calendaradd(CalendarDAY_OF_WEEK, 6);

Systemoutprintln(calendargetTime()); //打印下周日的日期

执行结果:

Mon Feb 25 16:25:01 CST 2013 //当前日期:2月25号 星期1

Mon Mar 04 16:25:01 CST 2013 //下周一日期:3月4号 星期1

Sun Mar 10 16:25:01 CST 2013 //下周日日期:3月10号 星期天

import javatextSimpleDateFormat;import javautilCalendar;import javautilDate;public class Main {private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");public static void main(String args[]) {Date d = new Date();// 月初Systemoutprintln("月初" + sdfformat(getMonthStart(d)));// 月末Systemoutprintln("月末" + sdfformat(getMonthEnd(d)));Date date = getMonthStart(d);Date monthEnd = getMonthEnd(d);while (!dateafter(monthEnd)) {Systemoutprintln(sdfformat(date));date = getNext(date);}}private static Date getMonthStart(Date date) {Calendar calendar = CalendargetInstance();calendarsetTime(date);int index = calendarget(CalendarDAY_OF_MONTH);calendaradd(CalendarDATE, (1 - index));return calendargetTime();}private static Date getMonthEnd(Date date) {Calendar calendar = CalendargetInstance();calendarsetTime(date);calendaradd(CalendarMONTH, 1);int index = calendarget(CalendarDAY_OF_MONTH);calendaradd(CalendarDATE, (-index));return calendargetTime();}private static Date getNext(Date date) {Calendar calendar = CalendargetInstance();calendarsetTime(date);calendaradd(CalendarDATE, 1);return calendargetTime();}} 这是一个月的你改改就能写出上个月的了吧

以上就是关于java 日期 下一周的第一天 最后一天 分别是多少号全部的内容,包括:java 日期 下一周的第一天 最后一天 分别是多少号、java获取本周所有日期,和本周第一天和最后一天,和上周所有日期,和上周第一天和上周最后一天、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9524203.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存