Bit*_*ase 2 java datetime date date-comparison simpledateformat
这段代码应该是假的,因为11:49是在12:07之前.但代码正在返回true.
如果我将12:07更改为13:00,则会给出错误,这是正确的.我不知道12:07有什么问题.我错过了什么吗?我尝试了compareTo和giveTime方法以及相同的结果.
SimpleDateFormat format = new SimpleDateFormat("MM/dd/yyyy hh:mm");
System.out.println(format.parse("5/31/2018 11:49").after(format.parse("5/31/2018 12:07")));
Run Code Online (Sandbox Code Playgroud)
hh(范围1-12),12:07解析为00:07:
SimpleDateFormat format = new SimpleDateFormat("MM/dd/yyyy hh:mm");
System.out.println(format.parse("5/31/2018 00:07").equals(format.parse("5/31/2018 12:07"))); // true
Run Code Online (Sandbox Code Playgroud)
使用HH(范围0-23)代替,它将产生所需的结果:
SimpleDateFormat format = new SimpleDateFormat("MM/dd/yyyy HH:mm");
System.out.println(format.parse("5/31/2018 11:49").after(format.parse("5/31/2018 12:07"))); // false
Run Code Online (Sandbox Code Playgroud)