java - 在java中计算两个时间之间的差异的最佳方法?

标签 java

我在一个数组中有两次,我需要计算这两个时间之间的差异。我已将小时转换为分钟,然后添加剩余的分钟。这给了我总体的总分钟数,一旦我为两者都这样做了,我只需从另一个中减去一个总分钟数。然后将它们转换回小时和分钟。

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/

相关文章:

java - 为什么我的随机数组没有在每次渲染上绘制随机纹理?我必须改变什么?

java - 使用休息服务获取方法不适用于 Jersey 客户端

java - 我无法将 SNS 消息作为电子邮件发布

java - Selenium RemoteWebDriver - 如果找不到元素则执行某些操作

java - 将当前时间转换为 PST 并与另一个日期进行比较

java - 创建评估新创建的变量的代码模板

c# - 如何绕过 C# (Winforms) 中缺少布局和 JPanel

java - 扫描仪第一次尝试时无法识别号码?

java - JAVA 中的 WCF 服务

java - 正则表达式替换 HTML 字符串中的样式属性