【发布时间】:2021-09-20 01:20:14
【问题描述】:
我使用HH:mm 格式在java 中打印小时和分钟。它将以格式给出时间
05:12,00:04。但我的要求是获得个位数的小时数:
05:12 => 5:12
00:04 => 0:04
10:18 => 10:18
下面是我正在运行以生成日期的代码,
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
public class TestDateUtil {
public static void main(String ar[]) {
LocalTime time = LocalTime.now();
String t = time.format(DateTimeFormatter.ofPattern("HH:mm"));
System.out.println(t);
}
}
我知道我可以使用字符串操作在 : 的基础上进行时间拆分,然后更改它,但这也需要更多我不想做的条件检查变化。有什么办法吗?
【问题讨论】:
-
你看过javadoc,尤其是可能的模式吗?
-
您是否要删除前导零?你看过stackoverflow.com/questions/61000127/…吗?
-
@Calculuswhiz:以故意包含前导零的方式对其进行格式化,然后删除它们,这似乎不是最好的方法......
-
H:mm 是个位数小时的格式
-
@JonSkeet 我想我并不清楚那条评论。我同意你的看法。我链接到的问题的答案可以做到这一点。我想我应该标记为重复。
标签: java java-time localtime time-format timeofday