目录

  • 前言
  • 1.获取指定日期所在周的第一天和最后一天
  • 2.获取指定日期所在月份的第一天和最后一天
  • 3.获取指定日期前一周所有时间

前言

项目中经常使用到获取日期所在当前周、月份第一天、最后一天以及指定日期前一周等信息,通过Calendar获取对应信息。

1.获取指定日期所在周的第一天和最后一天

获取日期所在周的第一天和最后一天
    public static void getWeek() {//大写的MM代表月份,小写的mm代表分钟。SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");String time = "2022-11-01 15:56:16";Date date = new Date();try{date = sdf.parse(time);}catch (ParseException e){e.printStackTrace();}Calendar calendarWeek =Calendar.getInstance();calendarWeek.setTime(date);//指定日期,要获得当前时间则直接new Date()calendarWeek.add(Calendar.WEEK_OF_MONTH,0);//0当前周,-1前一周,1后一周,以此类推calendarWeek.setFirstDayOfWeek(Calendar.MONDAY);calendarWeek.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);System.out.println("日期所在周第一天:" + sdf.format(calendarWeek.getTime()));calendarWeek.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY);System.out.println("日期所在周最一天:" + sdf.format(calendarWeek.getTime()));}

2.获取指定日期所在月份的第一天和最后一天

获取指定日期所在月份的第一天和最后一天
     /*** 获取日期所在月份的第一天和最后一天*/public static void getMonth() {SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");String time = "2022-11-01 15:56:16";Date date = new Date();try{date = sdf.parse(time);}catch (ParseException e){e.printStackTrace();}Calendar calendarMonth =Calendar.getInstance();calendarMonth.setTime(date);calendarMonth.add(Calendar.MONTH, 0);calendarMonth.set(Calendar.DAY_OF_MONTH, calendarMonth.getActualMinimum(Calendar.DAY_OF_MONTH));System.out.println("月份第一天:" + sdf.format(calendarMonth.getTime()));calendarMonth.set(Calendar.DAY_OF_MONTH, calendarMonth.getActualMaximum(Calendar.DAY_OF_MONTH));System.out.println("月份最后一天:" + sdf.format(calendarMonth.getTime()));}

3.获取指定日期前一周所有时间

获取指定日期所在前一周所有时间
    /*** 获取指定日期所在前一周所有时间*/public static void getDateInfo() {SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");String time = "2022-11-01 15:56:16";Calendar calendar = new GregorianCalendar();Date date = new Date();try{date = sdf.parse(time);}catch (ParseException e){e.printStackTrace();}List<String> dateList = new ArrayList<>();calendar.setTime(date);calendar.set(Calendar.HOUR_OF_DAY,0);calendar.set(Calendar.MINUTE,0);calendar.set(Calendar.SECOND,0);Date dateNew = calendar.getTime();calendar.setTime(dateNew);Calendar calendar2 = new GregorianCalendar();calendar2.setTime(dateNew);calendar2.add(Calendar.DAY_OF_MONTH,-6);while(calendar2.before(calendar)){String eachDate = sdf.format(calendar2.getTime());calendar2.add(Calendar.DAY_OF_MONTH,1);dateList.add(eachDate);}dateList.add(sdf.format(dateNew));}

Calendar获取日期所在周、月份第一天、最后一天以及前一周内所有时间相关推荐

  1. 使用Calendar类获取指定日期所在年/月份、周第一天、最后一天

    最近做项目有涉及需要获取指定日期或当前日期所在月份和周第一和最后一天,结合网上的资料和自己项目开发记录,记录下用到的这些方法. 目录 1.获取指定年份的第一天和最后一天 2. 获取指定日期月份第一天和 ...

  2. php获得每个月第一天的时间,PHP获取指定日期所在月的第一天和最后一天几个例子...

    标题有点说不清楚了就是否PHP获取指定日期所在月的第一天和最后一天几个段程序了了,下文给各位总结一下吧. 示例代码  代码如下 复制代码 //获取指定日期所在月的第一天和最后一天 function G ...

  3. PHP获取月份第一天最后一天

    PHP获取某月份第一天最后一天 PHP获取当前月第一天:date( "Y-m-01"): PHP获取当前月最后一天:date( "Y-m-t"): PHP获取当 ...

  4. Android开发之Java和Calendar日期上一年,上一个月,前一天,前一周的方法

    公司做的项目要求选择日期可以选择上一个月的,很简单,但是涉及到临界日期,例如跨年 直接的问题从2019.1.1往前一个月那就不简单了,于是找到相关方法自己尝试下.理解出了两个往前一年的区别 看下图: ...

  5. java calendar获取日期_Java使用Calendar获取当前日期

    使用Calendar创建日期类型对象,由于Calendar是抽象类不能直接new,使用getInstance()方法创建实例对象,具体看参考API(java.util.Calendar):另外,可通过 ...

  6. PHP 获取日期 多少小时后、多少天后、多少周后、多少月后、多少年后

    此处获取到的时间都为时间戳,如果需要日期格式,将时间戳转成需要的日期格式即可 例如:date("Y-m-d", strtotime("+1 days")); 1 ...

  7. php获取日期中的月份,年份

    <?php //日期 $date="2019/12/01"; //转换成时间戳 $timestamp=strtotime($date); //输出月份 echo date(' ...

  8. oracle取去年的最后一天,oracle本月、上月、去年同月第一天最后一天

    select trunc(sysdate, 'month') 本月第一天, trunc(last_day(sysdate)) 本月最后一天, trunc(add_months(sysdate, -1) ...

  9. java 和 mysql 获取周 星期 的第一天 最后一天 或者 月的 日期(字符串转日期,日期转字符串,日期加减)...

    获取周的第一天,最后一天 System.out.println(getStartEndDate("2016-05-01", 1)); 获取星期的第一天和最后一天 System.ou ...

最新文章

  1. oracle10.2 管理工具,Oracle 10.2.0.5 EM管理器的BUG
  2. php word excel转pdf文件怎么打开,php office文件(word/excel/ppt)转pdf文件,pptpdf
  3. Java RuntimeException异常处理汇总
  4. Visual C++ Attribute Programming
  5. 关于在64位系统上,使用APlayer,运行报错“找不到指定的模块”
  6. insert式注射攻击解析
  7. QT设置控件背景为透明
  8. 【PAT乙级】1054 求平均值 (20 分)
  9. word文档中插入特殊字符
  10. Python扩展库numpy中的布尔运算
  11. mysql压缩包版安装
  12. javascript中验证日期和日期时间格式
  13. ajax 跨域 java_java+jQueryd的ajax跨域方法
  14. myeclipse删除jar时出错,无法删除怎么办
  15. hash算法和常见的hash函数
  16. Java语言基础(常见对象3(数组排序(冒泡排序、选择排序、直接插入排序、快速排序、归并排序)、Arrays、基本数据类型包装类、Integer类、自动拆箱、自动装箱))
  17. 【海子诗全编】序及后记
  18. 解决HTML显示中文乱码问题
  19. 小程序如何实时音视频聊天
  20. JS判断客户端是手机还是PC

热门文章

  1. Android Studio Codota安装
  2. 出栈顺序(栈和队列)B
  3. 所有人体胸部和下半身各部位的英语单词
  4. Ubuntu下阅读CHM格式的文档
  5. hive建表(一)创建外部表
  6. 网红超火罗马桌面时钟效果
  7. java面试-jvm
  8. NTFS文件系统USN日志
  9. 扫频光学相干层析原理(SS-OCT)
  10. php mpdf导航栏信息,php – 我想使用mpdf在pdf中设置页眉和页脚