java - Java 中的日期比较

标签 java jsp date

我正在尝试将两个日期与当前日期进行比较。当我试图知道日期是否与当前日期相同时,它似乎不起作用。这是我在代码中所做的:

//BeginDate is set earlier

Date myDate= new SimpleDateFormat("dd/MM/yyyy").parse(BeginDate);
Date now = new Date();

    System.out.println("Now : " + now);
    System.out.println("myDate : " + myDate);
    System.out.println("equals : " + myDate.equals(now));
    System.out.println(myDate.compareTo(now));

我在控制台中得到了这个:

Now : Thu Dec 29 00:28:45 CET 2011
myDate : Thu Dec 29 00:00:00 CET 2011
equals : false
-1

第一个比较应该返回 true 而第二个“0”对吗?还是我遗漏了什么?

最佳答案

使用 equals() 或 compareTo() 比较日期会比较时间(小时、分钟、秒、毫秒)以及日期。您的测试失败是因为 myDate 今天是午夜,而 now 比那个晚一点。

关于java - Java 中的日期比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8662567/

相关文章:

linux date 命令跳过时间

r - 给定开始日期和结束日期, reshape /扩展之间每一天的数据(连续的每一天)

java - Hibernate postgresql比较日期

java - 使用谷歌应用引擎发送电子邮件

java - 如何将换行符从我的 Servlet 传递给 JavaScript?

java - 必须设置 Ignite 网格名称线程本地,或者应在 org.apache.ignite.thread.IgniteThread 下访问此方法

java - 如何将背景图像和 HTML 内容合并为一个可下载图像

html - 如何删除html中文本的第一行缩进

java - hibernate 查询异常 : could not resolve property in spring petclinic sample application

java - Spring Batch RowMapper - 获取列数和类型