-4

我有一个日期 [格式 - dd/mm/yyyy]。我需要将其与当前日期进行比较,以便执行此逻辑

if(end date is in the future) {
//logic
} else {
//logic
} 

我们可以在 JAVA 中做到这一点吗?

4

4 回答 4

1

看起来您是从字符串开始的,因此您可以使用SimpleDateFormat.parse将字符串转换为日期。

然后你可以在 Date 类上使用compareTo函数来查看它是否是过去的。

类似下面的东西(我还没有编译这个......)

if (new SimpleDateFormat("dd/MM/yyy").parse(yourSring).compareTo(new Date()) > 0) {
   ...
}

如果可能的话,我会一直使用 JodaTime 思想而不是 Java Date 和 Calendar 类。它更容易使用。

于 2012-10-02T12:19:06.563 回答
0

一般来说,使用Joda Time

DateTime.parse("...").isAfterNow();

您可能希望传递适当的DateTimeFormatter,例如DateTimeFormat.forPattern("d/M/y"),作为第二个参数。

于 2012-10-02T12:23:27.433 回答
0

使用 compareto 方法比较两个日期。在这里查看日期 API

if(curreDate.compareTo(thisdate)>0) {
// do your logic
}
于 2012-10-02T12:26:17.417 回答
-1
if(endDate.after(new Date())){}

只是比较一个新的日期,它将被创建一个现在的日期时间。

于 2012-10-02T12:21:12.240 回答