Date date = new Date();//当前时间String data1 = "2022-01-01";//指定专门的时间String format = "yyyy-MM-dd HH:mm:SS";SimpleDateFormat sd = new SimpleDateFormat(format);Date parse = null;try {parse = sd.parse(new Data());//将指定的时间进行转换成Date类型} catch (java.text.ParseException e) {e.printStackTrace();}Calendar c = Calendar.getInstance();c.setTime(parse);c.add(Calendar.MONTH, -1);//减去当前日期的一个月c.add(Calendar.YEAR,-1);//减去当前日期的一年String format1 = sd.format(c.getTime());System.out.println(format1);

获取指定月份之间相差月份数量

String oldDateStr="202201";//指定一个日期------------SimpleDateFormat sdf =new SimpleDateFormat( "yyyyMM");Date oldDate= null;try {oldDate = sdf.parse(oldDateStr);} catch (ParseException e) {e.printStackTrace();}Calendar calendar= Calendar.getInstance();//获取日历对象calendar.clear();calendar.setTime(oldDate);int oldYear =calendar.get(Calendar.YEAR);//获取指定日期年份int oldMonth =calendar.get(Calendar.MONTH)+1;//获取指定日期的月份String currentDate="202205";//指定另一个日期------------Date currentDate1= null;try {currentDate1= sdf.parse(currentDate);} catch (ParseException e) {e.printStackTrace();}calendar.clear();calendar.setTime(currentDate1);int currentYear=calendar.get(Calendar.YEAR);//当前日期的年份int currentMonth =calendar.get(Calendar.MONTH)+1;//当前日期的月份String curDate=sdf.format(currentDate1);//currentMonth可能会比oldMonth小,因此要加绝对值int betweenMonth =Math.abs((currentYear-oldYear)* 12 +(currentMonth-oldMonth));//计算相差多少了个月System.out.println(oldDateStr+"与今天"+curDate+"相差了"+betweenMonth+"个月");

获得指定日期的天数差:

DateFormat dft = new SimpleDateFormat("yyyy-MM-dd HH:mm:SS");Date date = new Date();String format = dft.format(date);Long num = 0L;try {Date star = dft.parse(createTime);//开始时间Date endDay=dft.parse(format);//结束时间Long starTime=star.getTime();Long endTime=endDay.getTime();num=endTime-starTime;//时间戳相差的毫秒数System.out.println("相差天数为:"+num/24/60/60/1000);//除以一天的毫秒数} catch (ParseException e) {e.printStackTrace();}

两个时间的比较:

使用Date.before(),Date.after()和Date.equals()

if (c.getTime().after(nowDay)){//如果质保到达的时间在当前的时间后面 即为trueSystem.out.println("true = " + true);}

将日期设定成上一个月,上一年。相关推荐

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

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

  2. oracle 查询上一月,Oracle数据库查询上一小时、上一天、上一个月、上一年

    Oracle数据库查询上一小时.上一天.上一个月.上一年.前几小时.前几天.前几月.前几年 上一小时.上一天.上一个月.上一年 上一小时 代码 select concat(to_char(sysdat ...

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

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

  4. 【转】使用PHP计算上一个月的今天

    转自:http://www.phppan.com/2011/06/php-last-month-today/ 一日,遇到一个问题,求上一个月的今天. 最开始我们使用 strtotime("- ...

  5. php 计算上个月,如何使用PHP计算上一个月的今天

    一日,遇到一个问题,求上一个月的今天. 最开始我们使用 strtotime("-1 month") 函数求值,发现有一个问题,月长度不一样的月份的计算结果有误. 比如:2011-0 ...

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

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

  7. 查询一个表中一个字段相同的数据_最实用MySQL 查询当天、本周,本月、上一个月的数据...

    MySQL 查询当天.本周,本月.上一个月的数据 mysql查询当天的所有信息: SELECT * FROM 表名 WHERE year(时间字段名)=year(now()) and month(时间 ...

  8. 获取当前日期的上一个月和后三个月。

    import datetime from dateutil.relativedelta import relativedelta #获取当前日期的上一个月和后一个月 print(datetime.da ...

  9. sql上一个月和下一个月

    select  sysdate-1 昨日,sysdate 今日,sysdate+1 明日 from dual; select sysdate,sysdate- interval '1' month f ...

最新文章

  1. PHP中self和static的区别,php中self与static的区别
  2. nginx 图片站点加访问权_nginx配置访问图片路径以及html静态页面的调取方
  3. C#中的深克隆的两种方式
  4. 对财务客户开具Invoice(无销售流程)
  5. 【ARM】arm异常中断处理知识点
  6. java jtable应用源码_JTable的应用(一)
  7. Controller 如果能保持单例,尽量使用单例
  8. 学生用计算机中sto,STO 文件扩展名: 它是什么以及如何打开它?
  9. 前端学习(3132):react-hello-react之受控组件
  10. POJ 1323 Game Prediction#贪心
  11. APICloud学习笔记之窗体跳转
  12. 【Flink】 Flink JobManager HA 机制的扩展与实现
  13. php csrf jsonp,读取型CSRF(JSONP劫持、CORS跨域资源读取、Flash跨域劫持)
  14. sql broker_使用SQL Server Service Broker进行异步处理
  15. ITU-T Technical Paper: QoS 的参数(非常的全,共计88个)
  16. 桌面有u盘符计算机里没有了,教你电脑不显示u盘盘符怎么办
  17. 选对了裤长,胜过任何一件高级定制
  18. 谭松韵被造谣ee文件与服务器,黄磊何炅心疼谭松韵被造谣!从和张子枫相处看出人品!...
  19. 苹果手机怎么查看足迹_苹果手机打电话怎么录音
  20. JimuReport积木报表打印多出一页空白页问题(解决方案)

热门文章

  1. 关于知识、技能、能力的理解?(个人理解)
  2. CSharp中Socket网络编程(六)UDP协议编程
  3. python爬虫pubmed论文标题
  4. 计算机工作原理(简述)
  5. Python vs. PHP
  6. 【转】VS2012 中文版转英文版 英文版转中文版 界面语言切换
  7. 字、比特、字长、字节
  8. codeforces 698A Vacations
  9. ROS::ros机器人路径远离障碍物的方法
  10. 卡尔曼滤波---公式推导和一些疑问