分钟之间的差异

时间:2011-09-21 14:13:30

标签: java time

假设我有以下格式的2个字符串:

“09/21 10:06 AM” “09/21 10:10 AM”

如何找到这些字符串之间的时差,存储为int?这必须足够强大,以处理像上午10:59和上午11:02(中间的奇数分钟),上午11:59和下午12:03(上午到下午开关)等情况。不需要担心秒。

谢谢!

5 个答案:

答案 0 :(得分:8)

我建议:

  • 使用Joda Time代替内置API;它很多更好。
  • 分析为LocalDateTime
  • 通过以下方式找出它们之间的区别:

    Minutes period = Minutes.minutesBetween(first, second);
    int minutes = period.getMinutes();
    

答案 1 :(得分:1)

答案 2 :(得分:0)

将字符串解析为Date个对象,并以毫秒为单位获取它们之间的差异。然后将这些毫秒转换为分钟(除以60000并取结果的上限)。

答案 3 :(得分:0)

如果转换为夏令时,那么一天的差异可能比另一天多一小时。

最好使用已经执行此操作的库。 JodaTime是最好的,但SimpleDateFormat和Date可能会做你需要的。

答案 4 :(得分:-2)

  1. 将2个字符串转换为日期。
  2. 从另一个中减去一个。
  3. 将结果乘以1440(一天中的分钟数)。
  4. 将结果舍入为整数。
  5. 让我知道它是否有效:)