【发布时间】:2011-09-21 14:13:30
【问题描述】:
假设我有 2 个格式如下的字符串:
“09/21 上午 10:06” “09/21 上午 10:10”
如何找到这些字符串之间的时间差,存储为 int?这必须足够强大以处理上午 10:59 和 11:02(其间的奇数分钟数)、上午 11:59 和下午 12:03(上午到下午切换)等情况。无需担心秒数。
谢谢!
【问题讨论】:
假设我有 2 个格式如下的字符串:
“09/21 上午 10:06” “09/21 上午 10:10”
如何找到这些字符串之间的时间差,存储为 int?这必须足够强大以处理上午 10:59 和 11:02(其间的奇数分钟数)、上午 11:59 和下午 12:03(上午到下午切换)等情况。无需担心秒数。
谢谢!
【问题讨论】:
我建议:
LocalDateTime值找出它们之间的区别:
Minutes period = Minutes.minutesBetween(first, second);
int minutes = period.getMinutes();
【讨论】:
将字符串解析为Date 对象,并以毫秒为单位获取它们之间的差异。然后将这些毫秒转换为分钟(除以 60000 并取结果的上限)。
【讨论】:
如果切换到夏令时,那么一天的差异可能会比另一天多一个小时。
最好使用已经这样做的库。 JodaTime 是最好的,但 SimpleDateFormat 和 Date 可能会满足您的需求。
【讨论】:
让我知道它是否有效:)
【讨论】: