/*** 给定开始时间和结束时间,判断当前时间是第几周,七天为一周,按照自然周进行计算** @param startTime* @return*/
public static int getWeek(long startTime, long currentTime, long endTime) {if (currentTime < startTime || endTime < startTime) {return 0;}Calendar calendar = Calendar.getInstance();calendar.setTimeInMillis(getFirstDayOfWeek(startTime).getTime());int year = calendar.get(Calendar.YEAR);int month = calendar.get(Calendar.MONTH);int dayOfMonth = calendar.get(Calendar.DAY_OF_MONTH);calendar.clear();calendar.set(year, month, dayOfMonth);// 当前时间和开始时间0点的毫秒数差值long value = currentTime - calendar.getTimeInMillis();if (getLastDayOfWeek(endTime).getTime() < currentTime) {value = endTime - calendar.getTimeInMillis();}// 一周的毫秒数long oneWeekMillis = 1000 * 60 * 60 * 24 * 7;return (int) (value / oneWeekMillis + 1);
}/*** 获取当前时间的周一时间** @param date* @return*/public static Date getFirstDayOfWeek(long date) {Calendar c = Calendar.getInstance();c.setTime(new Date(date));if (c.get(Calendar.DAY_OF_WEEK) == 1) {c.add(Calendar.DAY_OF_MONTH, -1);}c.add(Calendar.DATE, c.getFirstDayOfWeek() - c.get(Calendar.DAY_OF_WEEK) + 1);return c.getTime();}/*** 获取当前时间的周日时间** @param date* @return*/public static Date getLastDayOfWeek(long date) {Calendar c = Calendar.getInstance();c.setTime(new Date(date));// 如果是周日直接返回if (c.get(Calendar.DAY_OF_WEEK) == 1) {return new Date(date);}c.add(Calendar.DATE, 7 - c.get(Calendar.DAY_OF_WEEK) + 1);return c.getTime();}

Java判断日期在指定时间段中的第几周相关推荐

  1. java判断那个时间更晚_如何用Java判断日期是早于还是晚于另一个日期

    如何用Java判断日期是早于还是晚于另一个日期 另一个工作中常见的操作就是如何判断给定的一个日期是大于某天还是小于某天?在Java 8中,LocalDate类有两类方法isBefore()和isAft ...

  2. Java判断日期格式是否正确

    Java判断日期格式是否正确 Java中有一个能判断日期格式是否正确的方法SimpleDateFormat.setLenient(boolean lenient).该方法的默认值为true,会将错误的 ...

  3. java时间日期格式化和JDBC中的处理

    java时间日期格式化和JDBC中的处理 时间格式化类 SimpleDateFormat类 字符串格式化为时间对象 .parse()方法 时间对象格式化为字符串 .format()方法 DateTim ...

  4. java中判断日期是当天_java中如何判断指定日期是不是今天

    java中如何判断指定日期是不是今天 发布时间:2020-06-19 10:35:23 来源:亿速云 阅读:150 作者:Leah java中如何判断指定日期是不是今天?相信很多新手小白还没学会这个技 ...

  5. java 判断日期是周末_java计算两个日期之前的天数实例(排除节假日和周末)

    如题所说,计算两个日期之前的天数,排除节假日和周末.这里天数的类型为double,因为该功能实现的是请假天数的计算,有请一上午假的为0.5天. 不够很坑的是每个日期都要查询数据库,感觉很浪费时间. 原 ...

  6. java判断是否文件夹_java中怎么判断是否文件夹

    java判断是否是文件夹的方法:package com.tij.io.file; import java.io.File; /** * 检查File对象是文件还是目录 * @author guoyou ...

  7. Java 判断是否包含指定的子串 contains()

    Java 手册 contains public boolean contains(CharSequence s) 当且仅当此字符串包含指定的 char 值序列时,返回 true. 参数: s - 要搜 ...

  8. java 判断日期是同一天_java判断两个日期是否同一天的方法

    java判断两个日期是否同一天的方法: 1.使用Calendar来实现Calendar cal1 = Calendar.getInstance(); Calendar cal2 = Calendar. ...

  9. java 判断是否是字母_java中判断是否是字母

    java判断字符串是否是字母:记录一个方法,用来判断一个字串中字符是否全为字母 public class MainClass { public static void main(String[] ar ...

最新文章

  1. tomcat启动出现闪退_(转)Tomcat 启动后 “闪退”
  2. 三十六、深入Vue.js组件Component(上篇)
  3. 原生 遍历_前端原生写js代码还是用vue等框架写项目?
  4. 第3章 Python 数字图像处理(DIP) - 灰度变换与空间滤波18 - 低通、高通、带阻和带通滤波器、组合使用空间增强方法
  5. elementUI 下拉框隐藏时触发相关事件(下拉框下拉显示时不触发)
  6. 电商大促特辑:蘑菇街致美丽新世界的架构礼
  7. CruiseControl初探
  8. Phone Bills【PAT 1016题】--- 电话账单结算
  9. 五个免费数据采集工具网站
  10. 库克谈人工智能:增长飞快 兼具颠覆性和创造性
  11. 网络流量分析与Android逆向小结
  12. 在Keil 5上配置ST-Link下载器的方法 Windows 10
  13. TurnipBit—MicroPython开发板:妥妥拽拽零基础也能玩编程
  14. android行业调研报告,安卓手机应用商店市场用户调查报告
  15. Python学习笔记(1)---B站黑马程序员
  16. vue 生命周期 这个博客写的很好https://www.cnblogs.com/happ0/p/8075562.html
  17. 详解Python-Numpy库的函数diagonal()【并附函数diagonal()与函数diag()的区别】
  18. Kinect for Windows SDK v2.0 开发笔记 (五)骨骼帧与笑面男
  19. java 虚拟机设置 Xms Xmx PermSize MaxPermSize
  20. 高等数学:第二章 导数与微分(6)函数的微分

热门文章

  1. MusicTools下载 v3.4.0 全网免费无损音乐下载器
  2. 内心宁静_宁静js的新功能2 16 0
  3. java中两种异常类型_Java中的三种异常类型
  4. 介绍几款最优秀的CMS(网站内容管理系统)
  5. async/await面试题
  6. 《让子弹飞》系列——前四章的部分解读
  7. 导出期刊对应格式的参考_中文参考文献怎么一键导出正确格式?写作必看!
  8. 关心一下开放源码的许可证
  9. 国产银河数字式电子计算机是属于什么,邱桂香老师-计算机基础.ppt
  10. 4种公众号文章编辑器亲测对比