这篇文章主要介绍了详解在Java 语言(一种计算机语言,尤用于创建网站)语言(一种计算机语言,尤用于创建网站)中进行日期时间比较的四种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
1. Date.compareTo()
java.util.Date提供了在Java 语言(一种计算机语言,尤用于创建网站)语言(一种计算机语言,尤用于创建网站)中比较两个日期的经典方法compareTo()。
如果两个日期相等,则返回值为0。
如果日期在日期参数之后,则返回值大于0。
如果日期在日期参数之前,则返回值小于0。
@测试
void testDateCompare()引发ParseException {
简单日期格式SDF=新建简单日期格式(' yyyy-MM-DD ');
日期日期1=SDF。解析(' 2009-12-31 ');
日期日期2=SDF。解析(' 2019-01-31 ');
系统。出去。println('日期1:' SDF。格式(日期1));
系统。出去。println('日期2:' SDF。格式(日期2));
if (date1.compareTo(date2) 0) {
System.out.println('Date1时间在日期2之后');
} else if(日期1。比较对象(日期2)0){
System.out.println('Date1时间在日期2之前');
} else if(日期1。比较对象(日期2)==0){
System.out.println('Date1时间与日期2相等');
}否则{
System.out.println('程序怎么会运行到这里?正常应该不会');
}
}
输出结果:
日期1 : 2009年12月31日
日期2 : 2019-01-31
日期一时间在日期2之前
2. Date.before(),Date.after()和Date.equals()
一种语义上比较友好的方法来比较两个java.util.Date
@测试
void testDateCompare2()引发ParseException {
简单日期格式SDF=新建简单日期格式(' yyyy-MM-DD ');
日期日期1=SDF。解析(' 2009-12-31 ');
日期日期2=SDF。解析(' 2019-01-31 ');
系统。出去。println('日期1:' SDF。格式(日期1));
系统。出去。println('日期2:' SDF。格式(日期2));
if (date1.after(date2)) {
System.out.println('Date1时间在日期2之后');
}
if (date1.before(date2)) {
System.out.println('Date1时间在日期2之前');
}
if (date1.equals(date2)) {
System.out.println('Date1时间与日期2相等');
}
}
输出结果
日期1 : 2009年12月31日
日期2 : 2019-01-31
日期一时间在日期2之前
3. Calender.before(),Calender.after()和Calender.equals()
使用java.util.Calendar比较两个日期日期
@测试
void testDateCompare3()引发ParseException {
简单日期格式SDF=新建简单日期格式(' yyyy-MM-DD ');
日期日期1=SDF。解析(' 2009-12-31 ');
日期日期2=SDF。解析(' 2019-01-31 ');
系统。出去。println('日期1:' SDF。格式(日期1));
系统。出去。println('日期2:' SDF。格式(日期2));
日历呼叫1=日历。getinstance();
日历呼叫2=日历。getinstance();
cal 1。settime(日期1);
cal 2。settime(日期2);
if (cal1.after(cal2)) {
System.out.println('Date1时间在日期2之后');
}
if (cal1.before(cal2)) {
System.out.println('Date1时间在日期2之前');
}
if (cal1.equals(cal2)) {
System.out.println('Date1时间与日期2相等');
}
}
输出结果:
日期1 : 2009年12月31日
日期2 : 2019-01-31
日期一时间在日期2之前
4. Java 8日期比较方法
在Java 8中,可以使用新的isBefore()、isAfter()、isEqual()和比较()来比较本地日期,本地时间和本地日期时间。以下示例以比较两个java.time.LocalDate
@测试
void testDateCompare4()引发ParseException {
日期时间格式化程序。的模式(' yyyy-MM-DD ');
本地日期日期1=本地日期。(2009年12月31日);
本地日期日期2=本地日期。的(2019,1,31);
系统。出去。println('日期1:' SDF。格式(日期1));
系统。出去。println('日期2:' SDF。格式(日期2));
System.out.println('Is . ');
if (date1.isAfter(date2)) {
System.out.println('Date1时间在日期2之后');
}
if (date1.isBefore(date2)) {
System.out.println('Date1时间在日期2之前');
}
if (date1.isEqual(date2)) {
System.out.println('Date1时间与日期2相等');
}
}
输出结果
日期1 : 2009年12月31日
日期2 : 2019-01-31
是.
日期一时间在日期2之前
关于java中日期时间比较的四种方法的文章到此结束。有关java日期时间比较的更多信息,请搜索我们以前的文章或继续浏览下面的相关文章。希望大家以后能多多支持我们!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。