Java日期时间问题

标签 java date

我的 Date 实例有问题。我做了以下事情:

Date startDate = new Date(); //this is from database value
Date todayDate = new Date(); //this is created locally

现在,当我尝试比较它们时,唯一的问题是 Date 实例将有时间,因此当我检查它们是否相等时,它可能不会给出与我期望的相同的结果,而是更少或更多。我测试了以下内容:

    System.out.println(rsv.startDate);
    System.out.println("Today date:"+todayDate);
    if(rsv.startDate.equals(todayDate)){
        System.out.println("Equal!");
    }else if(rsv.startDate.after(todayDate)){
        System.out.println("After!!");
    }else{
        System.out.println("Before!!!!");
    }

虽然都是 2 月 5 日,但它显示的是 Before 的输出而不是 equal。我该如何补救?我知道 SimpleDateFormat 但这会将日期更改为字符串。

谢谢

最佳答案

对于日期操作,您可以使用 Joda 实用程序。以下代码片段显示比较两个日期:

DateTime one = new DateTime(original-Date-1);
DateTime two = new DateTime(original-Date-2);

LocalDate oneDate = one.toLocalDate();
LocalDate twoDate = two.toLocalDate();

return oneDate.compareTo(twoDate);

您可以看到:http://joda-time.sourceforge.net/index.html

关于Java日期时间问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9148483/

相关文章:

java - 自定义合并排序算法不起作用

java - JAVA 中的线程和信号量出现问题

javascript - 在 JavaScript 中反转 Date.toLocaleString 转换的 native 方法?

java - 为什么在 Weighted QuickUnion 中联合和查找操作期间的数组访问次数据说是 lg(N) 的顺序?

java - 如何给java程序添加关联ID?

java - 在 Kotlin Android 中解析日期的正确方法(最低 Android 版本 21)。我的解析不起作用

javascript - 获取与当前日期最接近的日期 (javascript)

javascript - moment js中的自定义长日期格式

java - 将 String 日期转换为 dd/MM/yyyy 格式的 java.util.Date

java - Spring Boot Rest api csv下载不设置带扩展名的文件名