2013-06-21 2 views
0

При использовании следующей SimpleDateFormat:SimpleDateFormat Анализирует и сравнивает время неправильно

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

Затем я анализирую затем сравнить 2 значения: 12:19 и 11:40 так:

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

я val быть - 1, что кажется неправильным с 12hrs и 19mins больше, чем 11hrs и 40mins

Однако, когда я меняю первое значение на 19:19 и сравниваю его снова с 11:40, тогда val возвращает значение , что кажется правильным.

Не знаю, почему это так, я думаю, что чего-то не хватает.

ответ

5

12:19 интерпретируется как 00:19 из-за "hh". Вам нужно «HH».

hh is 1-12 format.

HH - формат 0-23.

Подробнее here.

+0

Ничего себе, не могу поверить, что я пропустил это, я знал, что это что-то маленькое и глупое. Благодаря! –