gpt4 book ai didi

Java格式小时和分钟

转载 作者:行者123 更新时间:2023-11-30 07:46:44 25 4
gpt4 key购买 nike

我需要像这样格式化我的时间字符串:

int time = 160;

这是我的示例代码:

public static String formatDuration(String minute) {
String formattedMinute = null;
SimpleDateFormat sdf = new SimpleDateFormat("mm");
try {
Date dt = sdf.parse(minute);
sdf = new SimpleDateFormat("HH mm");
formattedMinute = sdf.format(dt);
} catch (ParseException e) {
e.printStackTrace();
}
return formattedMinute;
// int minutes = 120;
// int h = minutes / 60 + Integer.parseInt(minute);
// int m = minutes % 60 + Integer.parseInt(minute);
// return h + "hr " + m + "mins";
}

我需要将其显示为 2 小时 40 分钟。但我不知道如何附加“小时”和“分钟”。要求是不使用任何库。

如果您过去做过类似的事情,请随时提供帮助。非常感谢!

最佳答案

现在是 2018 年,您真的应该使用 Java 8 中引入的日期/时间库

String minutes = "160";
Duration duration = Duration.ofMinutes(Long.parseLong(minutes));

long hours = duration.toHours();
long mins = duration.minusHours(hours).toMinutes();

// Or if you're lucky enough to be using Java 9+
//String formatted = String.format("%dhrs %02dmins", duration.toHours(), duration.toMinutesPart());
String formatted = String.format("%dhrs %02dmins", hours, mins);
System.out.println(formatted);

哪些输出...

2hrs 40mins

为什么要用这样的东西?除了通常是一个更好的 API,当 minutes 等于 1600 时会发生什么?

上面的代码将显示 26hrs 40mins,而不是打印 2hrs 40minsSimpleDateFormat 格式化日期/时间值,它不处理持续时间

关于Java格式小时和分钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50419165/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com