- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这有效(返回 0):
ChronoUnit.SECONDS.between(
LocalDateTime.now(),
LocalDateTime.now());
这失败了:
ChronoUnit.SECONDS.between(
ZonedDateTime.ofInstant(new Date().toInstant(), ZoneId.of("UTC"),
LocalDateTime.now());
除了这个异常(exception):
Exception in thread "main" java.time.DateTimeException: Unable to obtain ZonedDateTime from TemporalAccessor: 2016-10-27T14:05:37.617 of type java.time.LocalDateTime
...
Caused by: java.time.DateTimeException: Unable to obtain ZoneId from TemporalAccessor: 2016-10-27T14:05:37.617 of type java.time.LocalDateTime
at java.time.ZoneId.from(ZoneId.java:466)
at java.time.ZonedDateTime.from(ZonedDateTime.java:553)
... 3 more
有人知道如何在 ChronoUnit.between() 中使用 java.util.Date 吗?
最佳答案
ChronoUnit.between 的文档方法说:
This calculates the amount in terms of this unit. The start and end points are supplied as temporal objects and must be of compatible types. The implementation will convert the second type to be an instance of the first type before the calculating the amount.
它正在尝试将 LocalDateTime
转换为 ZonedDateTime
。 LocalDateTime
没有区域信息并导致错误。
如果您使用 ZonedDateTime 作为第二个参数,它可以正常工作:
ChronoUnit.SECONDS.between(ZonedDateTime.ofInstant(new Date().toInstant(), ZoneId.of("UTC")), ZonedDateTime.now())
关于java - 转换后的 java.util.Date 的 ChronoUnit.between(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40285404/
这两种方法是否等效? 版本 1: var diff = Duration.between(begin, end).toHours(); 第 2 版; var diff = ChronoUnit.HOU
我有 2 个 LocalDate,我想找出它们之间的差异: LocalDate date1 = LocalDate.of(2018,11,30); LocalDate date2 = LocalDat
大多数情况下,每周的所有日历实用程序都是在周日/周日或周一/周一配置的。 我想将其配置为周六到周五: 假设我每周累积 11 月份的数据: var sample = Seq(("C1", "01/11/
ChronoUnit.HOURS.between(start, end) 等方法返回 long,因此我无法从那里获取分数。 是否有替代方法可以返回分数? 最佳答案 ChronoUnit.HOURS.b
Java 8 引入 ChronoUnit这在很大程度上等同于 TimeUnit在 Java 5 中引入。 是否有将 TimeUnit 转换为 ChronoUnit 的现有函数? (是的,我会自己写)
根据javadoc Instant.truncatedTo 的作用是 Truncating the instant returns a copy of the original with fields
这有效(返回 0): ChronoUnit.SECONDS.between( LocalDateTime.now(), LocalDateTime.now()); 这失
我想计算两个 LocalDateTime 对象之间的时间差(以毫秒为单位): LocalDateTime startDate = LocalDateTime.of(2017, 11, 22, 21,
这出乎我的意料: > Clock clock = Clock.systemUTC(); > Instant.now(clock).minus(3, ChronoUnit.DAYS); java.tim
我需要找到没有。两个日期之间的月份数,包括两个月份。我正在使用 ChronoUnit.Months.between,但得到了意想不到的结果。 代码适用于:1 月 31 日 - 7 月 31 日 失败日
我使用 JDK 8 类 ChronoUnit 和 ZonedDateTime 编写了这行代码 // if no timestamp was present, calculate
在查看 java 8 Time API 时,我看到很多方法都期望作为参数 ChronoUnit (TemporalUnit 的实现)为 here而其他人则期望 ChronoField (Tempora
我是一名优秀的程序员,十分优秀!