java - 需要比较没有秒的日期对象

标签 java

我在数据库中获取两个日期时间对象。我需要在没有秒的情况下进行比较。

日期 1 值:2018-05-25T13:55:24.000+05:30 日期 2 值:2018-05-31T08:31:00.000+05:30

我需要检查日期 1 是否晚于日期 2。

if(Checks.checkNotNull(dateTime) && (partiallyInvalidateDate.isAfter(dateTime))){
    code = null;
  }

但我需要在没有第二部分的情况下进行上述比较。需要一些专家的帮助才能做到这一点。

最佳答案

假设您从 java.sql.ResultSet 获取日期时间作为 java.sql.Timestamp,您可以直接在这些对象上设置秒和纳秒,然后进行比较与 after (尽管您会在 setSeconds 上收到已弃用的警告)。使用模拟时间戳进行测试:

import java.sql.Timestamp;

public class TestTimestamp {

     public static void main(String []args){
        Timestamp ts1 = Timestamp.valueOf("2011-12-25 11:12:13");
        Timestamp ts2 = Timestamp.valueOf("2011-12-25 11:12:14");

        ts1.setSeconds(0);
        ts1.setNanos(0);
        ts2.setSeconds(0);
        ts2.setNanos(0);

        System.out.println(ts1);
        System.out.println(ts2);
        //should print false since they're now identical
        System.out.println(ts2.after(ts1));
    }
}

如果您需要使用 LocalDateTime,请执行以下操作:

import java.sql.Timestamp;
import java.time.LocalDateTime;
import java.time.temporal.ChronoUnit;

public class Test{

     public static void main(String []args){
        Timestamp ts1 = Timestamp.valueOf("2011-12-25 11:12:13");
        Timestamp ts2 = Timestamp.valueOf("2011-12-25 11:12:14");

        LocalDateTime dt1 = ts1.toLocalDateTime().truncatedTo(ChronoUnit.MINUTES);
        LocalDateTime dt2 = ts2.toLocalDateTime().truncatedTo(ChronoUnit.MINUTES);

        System.out.println(dt1);
        System.out.println(dt2);
        //should print false since they're now identical
        System.out.println(dt2.isAfter(dt1));
     }
}

关于java - 需要比较没有秒的日期对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50616673/

相关文章:

java - Swing:在操作后处理 JFileChooser 结果?

java - 用户能够访问管理员角色页面 - Spring Security

java - java中的反射?

java - 使用 Scene Builder 创建 JavaFX TreeView

java - 如何判断数组下标是否为偶数?

c# - getter setter 文本字段 JAVA GUI

java - 如何创建从 postgres 到 parquet 的管道?

java - Apache CommonsVFS 连接到 https 服务器

java - 如何将我自己的类型放入表中

java.lang.StackOverflowError 在 Weblogic 12c 上运行 JSF 2 示例