ada*_*key 0 java simpledateformat
我很困惑为什么这不起作用.无论我改变什么,它打印出同样的东西.这里发生了什么?
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/YYYY");
String s = "11/22/2000";
Date d = sdf.parse(s);
System.out.println(d.toString());
Run Code Online (Sandbox Code Playgroud)
输出: Sun Dec 26 00:00:00 CST 1999
您使用的是YYYY哪一周而不是"正常"年份.这通常只用于星期和星期的说明符.
这里的确切行为很难解释 - 可行,但不是非常有用.基本上解决方案是"不要那样做".你想要一个格式字符串MM/dd/yyyy- 注意的情况yyyy.
(作为旁注,如果您可以使用java.time.*Java 8或Joda Time,那么在Java中会有更多时间用日期/时间问题.它不会影响这个特定问题,但通常是一个好主意. ..)