1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > Java 获取当前时间之后的第一个周几 java获取当前日期的下一个周几

Java 获取当前时间之后的第一个周几 java获取当前日期的下一个周几

时间:2023-10-25 18:10:00

相关推荐

Java 获取当前时间之后的第一个周几 java获取当前日期的下一个周几

Java 获取当前时间之后的第一个周几,java获取当前日期的下一个周几

//获得入参的日期Calendar cd = Calendar.getInstance();cd.setTime(date);// 获得入参日期是一周的第几天int dayOfWeek = cd.get(Calendar.DAY_OF_WEEK);// 获得入参日期相对于下周一的偏移量(在国外,星期一是一周的第二天,所以下周一是这周的第九天)// 若入参日期是周日,它的下周一偏移量是1int nextMondayOffset = dayOfWeek == 1 ? 1 : 9 - dayOfWeek;// 设置不同的日期只要使用不同的偏移量即可// 周二: val nextWednesdayOffset = if (dayOfWeek < 3) 3-dayOfWeek else 10 - dayOfWeek// 周三: val nextWednesdayOffset = if (dayOfWeek < 4) 4-dayOfWeek else 11 - dayOfWeek// 周四: val nextWednesdayOffset = if (dayOfWeek < 5) 5-dayOfWeek else 12 - dayOfWeek// 周五: val nextWednesdayOffset = if (dayOfWeek < 6) 6-dayOfWeek else 13 - dayOfWeek// 周六: val nextWednesdayOffset = if (dayOfWeek < 7) 7-dayOfWeek else 14 - dayOfWeek// 周日: val nextWednesdayOffset = if (dayOfWeek == 1) 0 else 8 - dayOfWeek// 增加到入参日期的下一个周几那天cd.add(Calendar.DAY_OF_MONTH, nextMondayOffset);return cd.getTime();

因为CSDN需要登录复制代码框,我把核心代码放在这里:

// 设置不同的日期只要使用不同的偏移量即可

// 周二: val nextWednesdayOffset = if (dayOfWeek < 3) 3-dayOfWeek else 10 - dayOfWeek

// 周三: val nextWednesdayOffset = if (dayOfWeek < 4) 4-dayOfWeek else 11 - dayOfWeek

// 周四: val nextWednesdayOffset = if (dayOfWeek < 5) 5-dayOfWeek else 12 - dayOfWeek

// 周五: val nextWednesdayOffset = if (dayOfWeek < 6) 6-dayOfWeek else 13 - dayOfWeek

// 周六: val nextWednesdayOffset = if (dayOfWeek < 7) 7-dayOfWeek else 14 - dayOfWeek

// 周日: val nextWednesdayOffset = if (dayOfWeek == 1) 0 else 8 - dayOfWeek

另外,还可以设置 时分秒,增加以下代码即可

// 设置 03:00:00cd.set(Calendar.HOUR_OF_DAY,3)cd.set(Calendar.MINUTE, 0)cd.set(Calendar.SECOND, 0)cd.set(Calendar.MILLISECOND, 0)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。