【问题标题】:SimpleDateFormat Parses and Compares time incorrectlySimpleDateFormat 错误地解析和比较时间
【发布时间】:2013-06-21 00:15:58
【问题描述】:

使用以下 SimpleDateFormat 时:

 SimpleDateFormat format = new SimpleDateFormat("hh:mm");

然后我解析然后比较 2 个值:12:1911:40,如下所示:

val = format.parse("12:19").compareTo(format.parse("11:40"));

我将val 设为 -1,这似乎是错误的,因为 12 小时 19 分钟大于 11 小时 40 分钟

但是,当我将第一个值更改为 19:19 并再次将其与 11:40 进行比较时,val 返回一个值 1,这似乎是正确的。

不知道为什么会这样,我想我错过了一些东西。

【问题讨论】:

    标签: java time compare simpledateformat


    【解决方案1】:

    由于“hh”,12:19 被解释为 00:19。你需要“HH”。

    hh 是 1-12 格式。

    HH 为 0-23 格式。

    阅读更多here

    【讨论】:

    • 哇,真不敢相信我错过了,我知道这是一件小而愚蠢的事情。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2017-08-11
    • 1970-01-01
    • 1970-01-01
    • 2016-08-30
    • 2011-12-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多