大家好今天来介绍4种方法来在Java中比较两个日期(java计算两个日期相差多少秒)的问题,以下是小编对此问题的归纳整理,来看看吧。

文章目录列表:

如何用java代码比较两个日期

首先 按照一定的格式输入两个日期的字符串
然后用SimpleDateFormat久充类转换成Date实例date1, date2
然后
Calendar cal1 = Calendar.getInstance();
Calendar cal2 = Calendar.getInstance();
cal1.setTime(date1);
cal2.setTime(date2);
这样你就有了两个表示所输入日期的Calendar实例了

Calendar可以做很多事
比如用cal1.after(cal2)或来自者cal1.before(cal2)或者cal1.equals(cal2)或者cal1.compareTo(cal2)来比较两个日期时间先后
比如cal.get(Calendar.YEAR)可以得到表示该日期年份的整数
同理ca再l.get(Calendar.MONTH)可以得到月份
甚至可以用cal.getTimeInMillis()得到表示该日期的毫秒数

有了53知识网这些方法,简单的计算之后就可以得到需要的相差的信息

如果是来求现成的源代码的- – 我没有

Java计算两个日期时间相差几天几小时几分钟等

思路是先计算两个日期相差的毫秒数,然后分别根据每天的毫秒数、每小时的毫秒数包红弦界硫是演述、每分钟的毫秒数来计算相差几天,几小来自时,几分钟。具体代53知识网码如下:

public 越乎元利才参纸布及static String getDatePoor(Dat棉认切均季龙未气阻它列e endDate歌执断移袁一老纪此担兴, Date nowDate) 纪况块望{

long nd = 1000 仅乙热稳龙月除万周最* 24 * 60 * 60;//每天毫秒数

long nh = 1000 * 60 * 60;//每小时毫秒数

long nm = 1000 * 60;//每分钟毫秒数

long diff = endDate.getTime() – nowDate.getTime();// 获得两个时间的毫秒时间差异

long day = diff / nd; // 计算差多少天

lo历货回留元言ng hour = diff % nd / nh;// 计算差多少小时

long min = diff % nd % nh / nm; // 计算差多少分钟

return day + “天” + hour + “小时” + min + “分钟”;

}

然后做一个测试,调用这个方法测试一下:

可以看出两个日期时间相差几天,几小时,几分钟都可以算出来。

Java使用以下三种方法来比较两个日期:

1、使用 getT问频判思编位家ime() 方法获取两个日期(自1970年1月1日经烈每叶获模明案水岩封历的毫秒数值),然后比较这两个值。

2、使用方法 before(),after() 和 equals()。例如,一个月的12号比18号干销克己妈粒五积左最早,则 new Date(99, 2, 12)派双病组节.before(new Date (99, 2, 18)) 返回true。

3青构采社规城谓出晚、使用 compar委育屋采eTo() 方法,它是由 Comparable 接口定义的,Dat电京e 类实现了这个接口。

参考资束去目料:

Oracle官方API接口-Util-Date

Oracle官方API接口-SimpleDateFormat

菜鸟教程-Java 日期时间

java怎么比较两个日期(年和月)的大小

so easy.
解决方法有很多53知识网.我说一种比较简单的.
SimpleDateFamort sdf = new SimpleDateFamort(“yyyy-MM”);
Date d1 = sdf.parse(“2009-01”);
Date d2 = sdf.parse(“2主心先国析龙席难议伯009-02″);
System时协座动还.out.println(d1.getTime() – d2.getTime());
明白了吧?

java怎么比较两个日期(年和月)的大小

1、获取日期的年月

functionintgetYearMonth(Datedt){/呢念杂现消棉运练严/传入日期
Calendarcal=Calendar.getInstance()客际社商;
cal.setT迫修东差善ime(dt.getTime());//设置时间
intyear=cal.get(Calendar.YEAR);//获取年份
i云守队供毛粒ntmonth=cal.get(Calendar.MONTH);//获取月份
returnyear*100+month;//返回年份乘以100加上月份的值,因为月份最多2位数,所以年份乘以100可以获取一个唯一的年月数值
}

2、比较编事减种此亮油继场日期

intd1=getYearMonth(newDate());
intd2=getYearMonth(newDate());
积扩消日些印if(d1==d2){//年月相等
}elseif(d1>d2){//d1比d2晚
}els径但果践预培张价e{//d1比d2早
}

java中怎么比较两个日期的大小

JDK问道里 这三来自个方法都可以。

after:当53知识网且仅当此 Date 对象表示的瞬间比 when 表示的瞬间晚,才返回 true;否则返回
fals称固呢前假敌质e。

before:早

compareTo:很验如果参数 Date 等于此 Dat何富笔虽显e,则返回值 0;如果此 Date 在 Date 参数之前,则返回小于 0
的值;如果此 Date 在 Date 参数之后,则返回大于 0 的值。

以上就是小编对于4种方法来在Java中比较两个日期 java计算两个日期相差多少秒问题和相关问题的解答了,希望对你有用