gpt4 book ai didi

java - 将 session 记录转换为人类可读的格式

转载 作者:太空宇宙 更新时间:2023-11-03 12:08:28 24 4
gpt4 key购买 nike

快速提问。

是否有更智能/更流畅的方式将分钟转换为更易读的格式,仅显示最高有效数字?

我正在使用 Android Studio 的 Java。

public String MinutesToHumanReadable(Long minutes) {

...

}

2 mins = "2 mins"
45 mins = "45 mins"
60 mins = ">1 hr"
85 mins = ">1 hr"
120 mins = ">2 hrs"
200 mins = ">3 hrs"
1500 mins = ">1 day"

我的代码非常繁琐、草率,而且有些不可读。

public String MinutesToHumanReadable(long minutes) {
String sReturn = "";

if (minutes > 515600) {
sReturn = "> 1 yr";

} else if (minutes > 43200) {
sReturn = (minutes / 43200) + " mths";

} else if (minutes > 10080) {
sReturn = (minutes / 10080) + " wks";

} else if (minutes > 1440) {
sReturn = (minutes / 1440) + " days";

} else if (minutes > 60) {
sReturn = (minutes / 60) + " hrs";

} else {
//<60
sReturn = minutes + " mins";

}

return sReturn;
}

非常感谢,J

最佳答案

我会使用一些虚拟的 if/else if/else 语句:

public static String convert(int minutes) {
if(minutes < 60) {
return String.format("%d mins", minutes);
} else if(minutes % 60 == 0) { // No minutes - i.e. not a fractional hour.
return String.format("%d hrs", minutes/60);
} else if(minutes < 1440) { //1 day = 1440 minutes
return String.format("%d hrs, %d mins", minutes/60, minutes%60);
} else {
return String.format("%d days", minutes / 1440);
}
}

示例输出

System.out.println(convert(24));   //=> 24 mins
System.out.println(convert(120)); //=> 2 hrs
System.out.println(convert(84)); //=> 1 hrs, 24 mins
System.out.println(convert(2880)); //=> 2 days

关于java - 将 session 记录转换为人类可读的格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19636583/

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