System.out.println( PeriodFormat.getDefault().print(Period.hours(1).plusMinutes(30).plusSeconds(60)));
以上Joda PeriodFormatter的输出是“1小时30分60秒”。
我知道这是一个边缘情况,但有没有办法输出这个“1小时31分钟”?
谢谢!
答案 0 :(得分:6)
您可以先使用normalizedStandard
对其进行规范化:
Period period = Period.hours(1).plusMinutes(30).plusSeconds(60);
PeriodFormat.getDefault().print(period.normalizedStandard());
或者可能:
Period period = Period.hours(1).plusMinutes(30).plusSeconds(60);
PeriodFormat.getDefault()
.print(period.normalizedStandard(period.getPeriodType()));
答案 1 :(得分:2)
尝试添加toStandardDuration()
:
System.out.println( PeriodFormat.getDefault().print(Period.hours(1).plusMinutes(30).plusSeconds(60).toStandardDuration()));