gpt4 book ai didi

Java:使用 LocalDateTime 和 ChronoUnit 的时间差(以毫秒为单位)

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:06:06 25 4
gpt4 key购买 nike

我想计算两个 LocalDateTime 对象之间的时间差(以毫秒为单位):

LocalDateTime startDate = LocalDateTime.of(2017, 11, 22, 21, 30, 30, 250);
LocalDateTime endDate = LocalDateTime.of(2017, 11, 22, 21, 30, 30, 252);
long diff = ChronoUnit.MILLIS.between(startDate, endDate)

但是,diff 的值不是我所期望的 2,而是 0。这是怎么回事?

最佳答案

我认为最后一个参数实际上是纳秒: https://docs.oracle.com/javase/8/docs/api/java/time/LocalDateTime.html#of-int-java.time.Month-int-int-int-int-int-

在我的例子中切换到 nanos 输出 2 的差异:

LocalDateTime startDate = LocalDateTime.of(2017, 11, 22, 21, 30, 30, 250);
LocalDateTime endDate = LocalDateTime.of(2017, 11, 22, 21, 30, 30, 252);
long diff = ChronoUnit.NANOS.between(startDate, endDate);

System.out.println(diff);

产量:

2

我认为由于您比较的是毫秒,因此差异正在向下舍入。

关于Java:使用 LocalDateTime 和 ChronoUnit 的时间差(以毫秒为单位),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47443504/

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