java中计算两个Date日期相差的月份

news/2024/10/19 7:35:30/

介绍

在Java中使用Date对象,计算两个日期相差的月份

示例代码

java">import java.util.Calendar;
import java.util.Date;public class DateUtils {public static int monthsBetween(Date startDate, Date endDate) {Calendar startCalendar = Calendar.getInstance();startCalendar.setTime(startDate);Calendar endCalendar = Calendar.getInstance();endCalendar.setTime(endDate);// 确保 startCalendar 的日期在 endCalendar 之前if (startCalendar.after(endCalendar)) {Calendar temp = startCalendar;startCalendar = endCalendar;endCalendar = temp;}int months = endCalendar.get(Calendar.MONTH) - startCalendar.get(Calendar.MONTH);int years = endCalendar.get(Calendar.YEAR) - startCalendar.get(Calendar.YEAR);// 如果年份差不为0,则从月份差中减去(年份差 * 12)return months - years * 12;}public static void main(String[] args) {// 示例:计算两个日期之间的月份差Date date1 = new Date(); // 当前日期// 假设有一个日期,比如 2023-01-01Date date2 = new Date(); // 需要替换为实际日期int months = monthsBetween(date1, date2);System.out.println("Months between dates: " + months);}
}

http://www.ppmy.cn/news/1432828.html

相关文章

Linux - 线程

目录 一.Linux线程的概念 1.1什么是线程 1.2 线程的优点 1.3 线程的缺点 1.4 线程异常 1.5 线程用途 二. Linux进程VS线程 2.1 进程和线程 三. Linux线程控制 3.1 POSIX线程库 3.2 创建线程 3.3 进程ID和线程ID 3.4 线程ID及进程地址空间布局 3.5 线程终止 3.6 线…

电子邮件格式怎么写?企业邮件格式正确的写法

电子邮件的写法,跟我们写书信差不多,也有标准格式和写法。电子邮件格式怎么写?电子邮件的完整内容包含:收件人、抄送(可选)、密送(可选)、主题、正文、附件(可选&#xf…

项目常用工具类

Java本身自带了许多非常好用的工具类,但有时我们的业务千奇百怪,自带的工具类又无法满足业务需求,需要在这些工具类的基础上进行二次封装改造。以下是在实际工作中,可能会使用到的工具类。 一、对象的序列化和反序列化 对象的序…

支付宝支付之SpringBoot整合支付宝入门

文章目录 支付宝支付对接流程核心所需的参数申请注册配置开发信息接口加签方式 发起支付订单案例门店直连方式商家/服务商后台转发方式安全设计支付pom.xmlapplication.ymlAlipayController.java统一收单线下交易业务请求参数CURL请求示例实例代码 查询撤销重要入参说明重要出参…

路由引入,路由过滤,路由策略实验

1,配置IP地址 R1: [R1]dis ip interface brief Interface IP Address/Mask Physical Protocol GigabitEthernet0/0/0 100.1.1.1/24 up up LoopBack0 …

[lesson49]多态的概念和意义

多态的概念和意义 函数重写回顾 父类中被重写的函数依然会继承给子类 子类中重写的函数将覆盖父类中的函数 通过作用域分辨符(::)访问父类中的同名成员 多态的概念和意义 面向对象中期望的行为 根据实际的对象类型判断如何调用重写函数父类指针(引用)指向 父类对象则调用…

ChatGPT引领:打造独具魅力的论文

ChatGPT无限次数:点击直达 ChatGPT引领:打造独具魅力的论文 在数字化时代,人工智能技术的快速发展不仅改变了我们生活的方方面面,还在学术研究领域展现出更广阔的可能性。其中,自然语言生成模型ChatGPT凭借其强大的生成能力和智能…

低代码技术与仓储管理的新纪元:革命性的供应链变革

引言 在当今数字化时代,企业对于创新和效率的追求越发迫切。在这样的背景下,低代码技术应运而生,成为企业数字化转型的重要工具之一。低代码技术的崛起为企业提供了一种快速、灵活、成本效益高的开发方式,大大缩短了软件开发周期…