gpt4 book ai didi

java - 如何使用Java获得小时差

转载 作者:行者123 更新时间:2023-12-01 13:06:22 28 4
gpt4 key购买 nike

我有两个日期,我正在尝试从中提取小时数 -

 Date1 = "2014-03-22 22:00:00.022023"
Date2= "2014-03-26 16:45:04.445531"

以上两个日期是时间戳,我是从 postgresql 数据库获取的。现在我正在尝试提取上述两个日期之间的小时数增量。所以我有下面的代码-

     long delta =  getDateDiff(queryDate, createdDate, TimeUnit.HOURS);
System.out.println(delta);

public static long getDateDiff(Date date1, Date date2, TimeUnit timeUnit) {
long diffInHour = date2.getTime() - date1.getTime();
return TimeUnit.convert(diffInHour,TimeUnit.HOURS);
}

但是增量为 - 326704423,这是错误的,因为它应该为 91 小时。我也有类似的 SQL 查询,它给了我日期之间的小时增量,从中我可以看到 91 作为返回的答案,所以我肯定做错了。

谁能帮我解决这个问题吗?

最佳答案

getTime() 返回毫秒数。因此您需要将毫秒转换为小时。

public static long getDateDiff(Date date1, Date date2) {
long diffInMilliseconds = date2.getTime() - date1.getTime();
return TimeUnit.MILLISECONDS.toHours(diffInMilliseconds);
}

关于java - 如何使用Java获得小时差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23231602/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com