1. package com.date;
  2.  
  3. import java.text.SimpleDateFormat;
  4. import java.util.Calendar;
  5.  
  6. public class Test {
  7.  
  8. /**
  9. * 获取某个月第一天的开始时刻
  10. * @param month
  11. * @return
  12. */
  13. public static String getFirstDayTimeOfMonth(int month) {
  14. Calendar cal = Calendar.getInstance();
  15. // 设置月份
  16. cal.set(Calendar.MONTH, month - 1);
  17. // 获取某月最小天数
  18. int firstDay = cal.getActualMinimum(Calendar.DAY_OF_MONTH);
  19. // 设置日历中月份的最小天数
  20. cal.set(Calendar.DAY_OF_MONTH, firstDay);
  21. // 格式化日期,获取开始时刻
  22. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  23. String firstDayOfMonth = sdf.format(cal.getTime()) + " 00:00:00";
  24. return firstDayOfMonth;
  25. }
  26.  
  27. /**
  28. * 获得某月的最后一天的最后时刻
  29. * @param month 要获取的月份
  30. * @return
  31. */
  32. public static String getLastDayTimeOfMonth(int month) {
  33. Calendar cal = Calendar.getInstance();
  34. // 设置月份
  35. cal.set(Calendar.MONTH, month - 1);
  36. // 获取月份的最大天数
  37. int lastDay = 0;
  38. //2月份每年的天数不固定
  39. if (month == 2) {
  40. lastDay = cal.getLeastMaximum(Calendar.DAY_OF_MONTH);
  41. } else {
  42. lastDay = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
  43. }
  44. // 设置日历中月份的最大天数
  45. cal.set(Calendar.DAY_OF_MONTH, lastDay);
  46. // 格式化日期,获取最后时刻
  47. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  48. String lastDayOfMonth = sdf.format(cal.getTime()) + " 23:59:59";
  49. return lastDayOfMonth;
  50. }
  51.  
  52. public static void main(String[] args) {
  53. Calendar cal = Calendar.getInstance();
  54. //获取当前月份
  55. int month = cal.get(Calendar.MONTH) + 1;
  56. System.out.println(month);
  57. System.out.println(getFirstDayTimeOfMonth(month));
  58. System.out.println(getLastDayTimeOfMonth(month));
  59. }
  60. }

JAVA获取某个月(当月)第一天的开始时刻和某个月(当月)最后一天的最后时刻的更多相关文章

  1. JAVA获取某年(当年)的第一天的开始时刻和某年(当年)的最后一天的最后时刻

    package com.date; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Dat ...

  2. java获取上个星期第一天和最后一天

    package com.goldcn.jzgmanageplat.b2b.controller; import java.text.SimpleDateFormat;import java.util. ...

  3. JAVA获取本周 本月 本年 第一天和最后一天

    /** * 日期工具类 */ public class DateUtils { /** * 获取今天 * @return String * */ public static String getTod ...

  4. java获取两个时间的相隔时间,包括年、月、日、时、分、秒

    public static final int YEAR_RETURN = 0;                    public static final int MONTH_RETURN = 1 ...

  5. java获取当月日期 和 周末

    /** * java获取 当月所有的日期集合 * @return */public static List<Date> getDayListOfMonth() { List list = ...

  6. 使用SQL语句查询日期(当月天数,当月第一天,当月最后一天,本年最后一天,当月第一个星期) 日期转字符串

    取某月天数:,) --当月天数 ,DATEADD(m, DATEDIFF(m,,getdate())+,))) ---当月第一天 ,getdate()) ---当月最后一天 ,dateadd(m,,d ...

  7. java 获取文件后缀名(文件类型)

      java 获取文件后缀名(文件类型) CreateTime--2018年5月23日09:16:31 Author:Marydon // 获取文件名的后缀名(文件类型) String oldFile ...

  8. java获取本月开始时间和结束时间、上个月第一天和最后一天的时间以及当前日期往前推一周、一个月

    import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.uti ...

  9. java获取当月的第一天和最后一天,获取本周的第一天和最后一天

    /** * 获取指定日期所在周的第一天和最后一天,用下划线连接 * @param dataStr * @return * @throws ParseException */ public static ...

随机推荐

  1. AT4168 [ARC100C] Or Plus Max

    从\(whk\)回来了. 考虑我们需要维护一个子集的信息. 对于二进制的子集信息维护有一个很经典的操作: 高维前缀和. AT4168 [ARC100C] Or Plus Max // Problem: ...

  2. Atcoder Grand Contest 020 F - Arcs on a Circle(DP+小技巧)

    Atcoder 题面传送门 & 洛谷题面传送门 一道难度 unavailable 的 AGC F 哦 首先此题最棘手的地方显然在于此题的坐标可以为任意实数,无法放入 DP 的状态,也无法直接计 ...

  3. DirectX12 3D 游戏开发与实战第十章内容(下)

    仅供个人学习使用,请勿转载.谢谢! 10.混合 本章将研究混合技术,混合技术可以让我们将当前需要光栅化的像素(也称为源像素)和之前已经光栅化到后台缓冲区的像素(也称为目标像素)进行融合.因此,该技术可 ...

  4. Go语言核心36讲(Go语言实战与应用二十)--学习笔记

    42 | bufio包中的数据类型 (上) 今天,我们来讲另一个与 I/O 操作强相关的代码包bufio.bufio是"buffered I/O"的缩写.顾名思义,这个代码包中的程 ...

  5. 文件IO与标准IO的区别

    文件IO与标准IO的区别 文件I/O就是操作系统封装了一系列函数接口供应用程序使用,通过这些接口可以实现对文件的读写操作,文件I/O是采用系统直接调用的方式,因此当使用这些接口对文件进行操作时,就会立 ...

  6. R语言与医学统计图形-【9】过渡函数qplot

    ggplot2绘图系统 基础绘图包向ggplot2过渡--qplot 绘图理念的不同: 基础绘图包是先铺好画布,再在这张画布上作图(常规思维): ggplot2打破常规,采用图层叠加的方法. qplo ...

  7. 【JavaWeb安全】RMI-Remote Method Invocator

    RMI-Remote Method Invocator 什么是RMI?RMI有什么用? RMI允许用户通过数据传输,调用远程方法,在远程服务器处理数据.例如将1,3传到远程服务器的加法运算器,加法运算 ...

  8. 利用unordered_map维护关联数据

    在leetcode上刷339题Evaluate Division(https://leetcode.com/problems/evaluate-division/#/description)时在脑中过 ...

  9. Default arguments and virtual function

    Predict the output of following C++ program. 1 #include <iostream> 2 using namespace std; 3 4 ...

  10. vue2 安装打包部署

    vue2项目搭建记录 mkdir -p /opt/wks/online_pre/1006cd /opt/wks/online_pre/1006mkdir hongyun-ui /opt/code/vu ...