首先,我需要使用Java 7的,所以我不能使用SE8时间的东西可悲的是,虽然我很想了解它,而不是!
我有时间的名单如下:
List<Duration> durations;
大多数这些值均约8小时之久,但有些是零(有意地)。如何检查,如果他们是0天,0分0秒,0毫秒长?我需要检查每一个方法如下还是有一个巧妙的方法?
for(Duration duration : durations){
if(duration.getStandardDays() == 0 &&
duration.getStandardHours() == 0 &&
duration.getStandardSeconds() == 0){
//do something
}
}
我想问的原因是我发现有API中的常量零,而我认为这是某种链接到它。如何比较它呢?或者我应该?
https://www.joda.org/joda-time/apidocs/org/joda/time/Duration.html
您可以尝试使用duration.isEqual(Duration.ZERO)
。该isEqual
方法在AbstractDuration.java和静态Duration.ZERO
值所限定here定义。
该乔达时间项目现在处于维护模式。这是团队建议迁移到java.time类。
在ThreeTen-Backport项目大部分的Java 8的java.time功能,后来又回来了,移植到Java 6和Java 7。
所述org.threeten.backport.Duration
类提供isZero
方法来测试长度为零。
myDuration.isZero()