-8

我有这个字符串:

String times = "5:15 | 4:41 | 4:27 | 3:13 | 5:01 | 4:47 | 4:50 | 5:20"

结果应该是“37:34”

如何在 java 字符串中处理这个并返回预期的结果?

4

3 回答 3

1

我会用一个标记器来解析这个字符串。
遍历结果Array,取所有值的小时分钟并将它们相加(h+h 和 min+min)。完成计算后:

hours += minutes / 60
minutes = minutes % 60

就是这样!

于 2013-01-12T20:00:43.947 回答
0

创建 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 语句。您可以在此处查看运行代码。

于 2013-01-12T20:01:40.260 回答
0

我会解析字符串并将所有转换为分钟。比添加它们并将其转换回小时和分钟。

于 2013-01-12T20:05:08.750 回答