大家好今天来介绍4种方法来在Java中比较两个日期(java计算两个日期相差多少秒)的问题,以下是小编对此问题的归纳整理,来看看吧。
文章目录列表:
- 1、如何用java代码比较两个日期
- 2、Java计算两个日期时间相差几天几小时几分钟等
- 3、java怎么比较两个日期(年和月)的大小
- 4、java怎么比较两个日期(年和月)的大小
- 5、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 Da系te(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.getIn米stance()客际社商;
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计算两个日期相差多少秒问题和相关问题的解答了,希望对你有用
本文章的二维码
用手机扫码打开本页