我对scala和jodatime都比较陌生,但两者都给人留下了深刻的印象.我想弄清楚是否有更优雅的方法来做一些日期算术.这是一个方法:
private def calcDuration() : String = {
val p = new Period(calcCloseTime.toInstant.getMillis - calcOpenTime.toInstant.getMillis)
val s : String = p.getHours.toString + ":" + p.getMinutes.toString +
":" + p.getSeconds.toString
return s
}
Run Code Online (Sandbox Code Playgroud)
我将所有内容转换为字符串,因为我将它放入MongoDB,我不知道如何序列化joda持续时间或句点.如果有人知道我真的很感激答案.
无论如何,calcCloseTime和calcOpenTime方法返回DateTime对象.将它们转换为Instants是我发现的最好的方法.有没有更好的办法?
另一个问题:当小时,分钟或秒是单个数字时,结果字符串不是零填充.是否有一种简单的方法使字符串看起来像HH:MM:SS?
谢谢,约翰