我在一个数组中有两次,我需要计算这两个时间之间的差异。我已将小时转换为分钟,然后添加剩余的分钟。这给了我总体的总分钟数,一旦我为两者都这样做了,我只需从另一个中减去一个总分钟数。然后将它们转换回小时和分钟。
double no1 = Double.parseDouble(array[i][4]);
int time1_calc = (int) (no1 * 100); //Remove decimal point
int time1hours = (time1_calc) / 100;
int time1mins = (time1_calc) % 100;
int time1HM = time1hours*60;
int time1_total = time1HM + time1mins;
上面的代码是第二次使用,我然后使用:
int total = time2_total - time1_total;
对于此,所有计算“看起来”都有效,但例如 10.18 和 09.35 之间的差异为 1 小时 23 分钟或总共 83 分钟。我的节目似乎显示 43 分钟。
我已经尝试过其他方法,但仍然无法使其工作,有什么想法吗?
最佳答案
使用 DateFormat
(可能 SimpleDateFormat
)对象来解析您的字符串,并且不要尝试使用 parseDouble()
(那是为了解析单个数字,而时间不是)。
关于java - 在java中计算两个时间之间的差异的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2027100/