import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; import java.util.HashMap; import java.util.Map; public class Test { /** * @param args * @throws ParseException */ public static void main(String[] args) throws ParseException { SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd"); String str = "2012-05-02"; Date date = df.parse(str); Map<String, String> map = getFirstday_Lastday_Month(date); System.out.println("当月第一天:" + getFirstDay()); System.out.println("当月最后一天:" + getLastDay()); System.out.println("一个月前第一天:" + map.get("first")); System.out.println("一个月前最后一天:" + map.get("last")); } /** * 某一个月第一天和最后一天 * * @param date * @return */ private static Map<String, String> getFirstday_Lastday_Month(Date date) { SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd"); Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.MONTH, -1); Date theDate = calendar.getTime(); // 上个月第一天 GregorianCalendar gcLast = (GregorianCalendar) Calendar.getInstance(); gcLast.setTime(theDate); gcLast.set(Calendar.DAY_OF_MONTH, 1); String day_first = df.format(gcLast.getTime()); StringBuffer str = new StringBuffer().append(day_first).append( " 00:00:00"); day_first = str.toString(); // 上个月最后一天 calendar.add(Calendar.MONTH, 1); // 加一个月 calendar.set(Calendar.DATE, 1); // 设置为该月第一天 calendar.add(Calendar.DATE, -1); // 再减一天即为上个月最后一天 String day_last = df.format(calendar.getTime()); StringBuffer endStr = new StringBuffer().append(day_last).append( " 23:59:59"); day_last = endStr.toString(); Map<String, String> map = new HashMap<String, String>(); map.put("first", day_first); map.put("last", day_last); return map; } /** * 当月第一天 * * @return */ private static String getFirstDay() { SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd"); Calendar calendar = Calendar.getInstance(); Date theDate = calendar.getTime(); GregorianCalendar gcLast = (GregorianCalendar) Calendar.getInstance(); gcLast.setTime(theDate); gcLast.set(Calendar.DAY_OF_MONTH, 1); String day_first = df.format(gcLast.getTime()); StringBuffer str = new StringBuffer().append(day_first).append( " 00:00:00"); return str.toString(); } /** * 当月最后一天 * * @return */ private static String getLastDay() { SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd"); Calendar calendar = Calendar.getInstance(); Date theDate = calendar.getTime(); String s = df.format(theDate); StringBuffer str = new StringBuffer().append(s).append(" 23:59:59"); return str.toString(); } }
相关推荐
这里包括java处理常用的时间,可以获取当前日期,本周周一日期,本月第一天,本月最后一天等日期处理
java代码获取当前月第一天和最后一天的毫秒值(csdn)————程序
java开发中获取当月的第一天和最后一天日期
Calendar c = new GregorianCalendar(); c.setFirstDayOfWeek(Calendar.MONDAY); c.setTime(new Date()); c.set(Calendar.DAY_OF_WEEK, c.getFirstDayOfWeek()); // Monday System.out.println(c....//本月第一天
主要介绍了Java实现获取某年某月第一天/最后一天的方法,涉及java日期运算相关操作技巧,需要的朋友可以参考下
Class类工具 \Cookie工具类 \excel读取 工具类\Java如何生成验证码图片和点击刷新验证码\java获取当前月第一天和最后一天,上个月第一天和最后一天\java实现ftp文件的上传与下载\Json工具类 - JsonUtils.java\JS...
在某大牛原控件的基础上,做了一个拓展使用,可解决一些原控件的bug问题。 文内只写了日期的选择使用,时间的选择类似,详情可参照博客内容: https://blog.csdn.net/w630886916/article/details/81701149
1.计算两个日期间的小时数,天数。 2.日期加减得到新的日期 3.根据year和week得到该周第一天和最后一天的日期。
Android Java面试笔试题 带答案
主要介绍了Java实现计算一个月有多少天和多少周,本文直接给出实例代码,需要的朋友可以参考下
天数不包括重叠的天,即第一天和最后一天。 科学家给出了以下测试案例: 1983年2月6日至1983年6月22日:19天 1984年4月7日-1984年12月25日:173天 1989年3月1日至1983年3月8日:1979年 因此,假定该程序将对日期...
154.kafka 同时设置了 7 天和 10G 清除数据,到第五天的时候消息达到了 10G,这个时候 kafka 将如何处理? 155.什么情况会导致 kafka 运行变慢? 156.使用 kafka 集群需要注意什么? 十六、Zookeeper 157.zookeeper ...
示例问题 它是1人1应用程序开发的示例应用程序。 GIF动画 您可以通过屏幕右侧的 Download ZIP 下载源的压缩文件。源的换行代码是 LF 。 无法使用 Windows 记事本查看...2. 问卷屏幕的第 1 天和第 2 天 3. 问卷完成画面