我有这个字符串:
String times = "5:15 | 4:41 | 4:27 | 3:13 | 5:01 | 4:47 | 4:50 | 5:20"
结果应该是“37:34”
如何在 java 字符串中处理这个并返回预期的结果?
我有这个字符串:
String times = "5:15 | 4:41 | 4:27 | 3:13 | 5:01 | 4:47 | 4:50 | 5:20"
结果应该是“37:34”
如何在 java 字符串中处理这个并返回预期的结果?
我会用一个标记器来解析这个字符串。
遍历结果Array
,取所有值的小时和分钟并将它们相加(h+h 和 min+min)。完成计算后:
hours += minutes / 60
minutes = minutes % 60
就是这样!
创建 DateTime 变量并对它们求和是一种方法,但我假设您是 Java 新手,并为您提供基本答案,以警告您进行一些编码,而不是走简单的路:
String[] timesSplit = times.split(" | ");
int hour = 0;
int minute = 0;
for(int i = 0; i < timesSplit.length; i += 2) {
String[] time = timesSplit[i].split(":");
hour += Integer.parseInt(time[0]);
minute += Integer.parseInt(time[1]);
}
hour += minute / 60;
minute %= 60;
String result = hour + ":" + minute;
编辑:奇怪的行为,拆分为“|”结果字符串数组,如:
5:33, |, 1:32, ..
因此相应地编辑了 for increment 语句。您可以在此处查看运行代码。
我会解析字符串并将所有转换为分钟。比添加它们并将其转换回小时和分钟。