我有这个LocalTime格式化程序:
private final DateTimeFormatter formatter = DateTimeFormatter.ofPattern("H:m");
我只有一个H而且只有一个m,否则如果小时或分钟只有一个diget,我就会异常。 我现在的问题是如果小时或分钟只有一位数,如何添加零。这是我目前的代码:
final LocalTime localTime =
LocalTime.parse(duration.getStandardHours() + ":" +
(duration.getStandardMinutes() % 60), formatter);
答案 0 :(得分:1)
您可以直接从小时/分钟创建LocalTime:
LocalTime time = LocalTime.of(duration.getStandardHours(),
duration.getStandardMinutes() % 60);
似乎Duration
来自joda时间 - 在Java时间也有Duration
所以你可能想切换到那个以保持一致性:
java.time.Duration duration = java.time.Duration.ofMinutes(67);
LocalTime time = LocalTime.of((int) duration.toHours(), (int) duration.toMinutes() % 60);
System.out.println("time = " + time); //01:07