因最近在写代码的时候遇到了获取上个月月份的问题YYYYMM这个格式,根据给的工具类,获取出来的值是有问题的,所以记录以下。

问题方法

/*** 获取上个月的月份* 该方法有问题 三月份的29 30 31 有bug* @return*/
public static final String getLastMonth() {SimpleDateFormat format = new SimpleDateFormat("yyyyMM");Date date = new Date();Calendar calendar = Calendar.getInstance();// 设置为当前时间calendar.setTime(date);// 设置为上一个月calendar.set(Calendar.MONTH, calendar.get(Calendar.MONTH) - 1);date = calendar.getTime();return format.format(date);
}

正确的方法

/*** 获取上个月月份* @return*/
public static final String getLastMonth() {SimpleDateFormat format = new SimpleDateFormat("yyyyMM");Date date = new Date();Calendar calendar = Calendar.getInstance();// 设置为当前时间calendar.setTime(date);calendar.add(Calendar.MONTH,-1);// 设置为上一个月//calendar.set(Calendar.MONTH, calendar.get(Calendar.MONTH) - 1);date = calendar.getTime();return format.format(date);
}

Java 获取上一个月的月份相关推荐

  1. php 使用strtotime获取上一个月月份的问题

    strtotime() 函数说明: strtotime() 函数将任何英文文本的日期或时间描述解析为 Unix 时间戳,比如: 1.输出当前时间戳:echo strtotime("now&q ...

  2. js获取上一个月、下一个月

    /*** 获取上一个月** @date 格式为yyyy-mm-dd的日期,如:2014-01-25*/function getPreMonth(date) {var arr = date.split( ...

  3. 根据指定日期获取上一个月

    根据指定日期获取上一个月 看过不少类似文章,根据一个日期,要取得相应的上一个月的值,则利用Calendar的api:get(Calendar.MONTH) - 1)来算. 思路是对的,但这个api有坑 ...

  4. php 上一个月的开始和结束,php获取上一个月的开始与结束时间遇到的问题

    改正之前: $_lastMonthStart = date('Y-m-1 00:00:00', strtotime("-1 month")); $_lastMonthEnd = d ...

  5. java取上一个月_java获取当前上一周、上一月、上一年的时间

    SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Calendar c=Calendar ...

  6. java取上一个月_Java获取指定日期前一月(年)或后一月(年)

    /** * 获取指定月的前一月(年)或后一月(年) * @param dateStr * @param addYear * @param addMonth * @param addDate * @re ...

  7. oracle获取上一个月或者下一个月或者多少个月

    当月 2020-2-25 add_months()函数 负数:当前月份减去多少个月份  正数:当前月份添加多少个月份 . 字符串型: select  to_char(add_months(trunc( ...

  8. 获取上一个月的同一天

    下面的代码是我在网上搜到的,成功解决的我的问题,我一直用的是set方法,不好使,改为add后就可以了! public static Calendar getDateOfLastMonth(Calend ...

  9. pgsql获取上一个月,上一个月第一天,上一个月最后一天

    测试数据: select  TO_CHAR((DATE_TRUNC('MONTH', CURRENT_DATE) + INTERVAL '-1 MONTH')::DATE,'YYYYMM') AS & ...

最新文章

  1. PyCharm 2019.1 EAP 5 发布,全新的 Jupyter Notebook
  2. 『第12天』从ipc$ 连接失败讲起
  3. QMetaMethod 获取成员函数的元信息
  4. 在linux中的文件中查找_如何在Linux中查找文件
  5. Jquery各种前台效果JQ
  6. mysql跳脱字符 单引号_MYSQL特殊字符(单引号,行尾斜杠)的处理
  7. [JBoss] JNDI与JBossNS
  8. UAV 无人机检测实践分析
  9. Myeclipse10安装反编译软件笔记
  10. asm MGMT库迁移
  11. Linux 开始IntelCPU节能模式
  12. ODL框架项目搭建小试牛刀-demo篇
  13. 多张图片合成一张jpg工具_将多张图片合并成一张图片的小工具Collagerator
  14. h5倒计时弹窗_iH5中级教程:活动必备,实现H5的倒计时
  15. mysql数据导入报错1265
  16. “天地不仁,以万物为刍狗”的真正意思
  17. qq申诉网站无法接到服务器,为什么我qq申诉不成功 - 卡饭网
  18. 揭秘三端型肖特基二极管检测好坏的方法
  19. Java选择语句练习
  20. 怎么下载不允许下载的东西

热门文章

  1. [网络安全学习篇58]:PHP代码注入
  2. ios 九宫格图片的展示实现
  3. 材料技术与信息技术、能源技术是现代文明的三大支柱
  4. HTML实战案例素材1:制作树形菜单页面
  5. WC2018 乱搞记划雪记
  6. OpenGL入门demo
  7. 基于Java的高校网上报销平台系统详细设计
  8. 基于SpringBoot 的报销系统
  9. 前车碰撞预警——FCW,基于深度学习和单目摄像头测距的前车碰撞预警源码
  10. 【Oracle】oracle 计算当月有多少个星期天、星期六、星期一