这是liftweb TimeHelpers的错误:60.分钟不等于1.hour

时间:2011-12-07 16:30:06

标签: scala lift

scala> import net.liftweb.util.TimeHelpers._

import net.liftweb.util.TimeHelpers._

scala> 60.minutes  == 1.hour

res14: Boolean = false

scala> 

1 个答案:

答案 0 :(得分:3)

根据David Pollak(谁应该知道),这是由于joda时间。请参阅Is It a bug of liftweb TimeHelpers: 60.minutes not equals 1.hour

解决方案是转换为Duration,然后比较这两个值。来自Period.java

  

期间的定义也会影响equals方法。一段时间   1天不等于24小时,也不等于1小时等于60   分钟。这是因为句号表示抽象的定义   一段时间(例如,一天可能实际上不是24小时,可能是23   或25美元在夏令时边界)。比较实际的持续时间   两个句点,使用toDuration将操作转换为持续时间   强调结果可能会根据您的日期而有所不同   选择。

此解决方案由上述链接提供给google群组线程,并在此处复制,以便其他人可以在此处找到。