作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
尝试此示例代码时:
use(groovy.time.TimeCategory) {
800.millisecond + 300.millisecond
}
0.1100 seconds
最佳答案
这看起来像一个错误,TimeDuration 包含 1100 毫秒,但是当它打印出来时,它错误地将它转换为秒。
I've added it to the Groovy JIRA as a bug 编辑 对于版本 2.0.6、1.8.9 和 2.1.0,它现在被标记为 FIXED
与此同时,我猜你需要做你自己的从 TimeDuration 到 String 的转换器:-/
编辑
你可以做这样的事情(而且可能有一种更简洁的方法)
groovy.time.TimeDuration.metaClass.normalize = { ->
def newdmap = ['days','hours','minutes','seconds','millis'].collectEntries {
[ (it):delegate."$it" ]
}.with { dmap ->
[millis:1000,seconds:60,minutes:60,hours:24,days:-1].inject( [ dur:[ days:0, hours:0, minutes:0, seconds:0, millis:0 ], roll:0 ] ) { val, field ->
val.dur."$field.key" = dmap."$field.key" + val.roll
val.roll = val.dur."$field.key".intdiv( field.value )
val.dur."$field.key" = field.value < 0 ?
val.dur."$field.key" :
val.dur."$field.key" % field.value
val
}.dur
}
new TimeDuration( newdmap.days, newdmap.hours, newdmap.minutes, newdmap.seconds, newdmap.millis )
}
这增加了
normalize
方法
TimeDuration
,那么做:
use(groovy.time.TimeCategory) {
800.millisecond + 300.millisecond
}.normalize()
展会
1.100 seconds
我没有对该方法进行大量测试,因此请注意它可以通过一些单元测试来确保它不会因其他情况而失败。
关于Groovy TimeCategory 坏毫秒加法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12833903/
尝试此示例代码时: use(groovy.time.TimeCategory) { 800.millisecond + 300.millisecond } 在 groovy 网络中 conso
我在项目中使用Grails 2.4.4,并且尝试使用Spock编写单元测试用例。我尝试进行单元测试的方法使用use(TimeCategory)。测试用例运行时间过长,在调试时,我发现它并没有超出我拥有
是否有关于如何将 TimeCategory(或等效项)与 java8 LocalDate 和 LocalDateTime 一起使用的示例或引用?我发现的所有代码片段都引用了我试图避免的 java.ut
我有带 API 的 Java 应用程序。 API 允许使用灵活的日期语法: PUT /monthly-jobs/job1 { "startExpression": "now + 1.week
我是一名优秀的程序员,十分优秀!