Java中的日期问题

zoi*_*oit 1 java syntax date simpledateformat

当我使用java时,我有下一个日期问题.我有这个代码:

String dateF=anio_final+"-12-31";
System.out.println("La fecha final al principio:"+dateF);

java.util.Date f_final=null;
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-mm-dd");
f_final=formatter.parse(dateF);
System.out.println("Al final la fecha final es:"+f_final);

//=> anio_final is 2012, 
Run Code Online (Sandbox Code Playgroud)

因此,当我打印dateF时,我得到了2012-12-31,但是当我将SimpleDateFormat放在f_final变量上时,我得到了2012-01-31,为什么?

Roh*_*ain 5

SimpleDateFormat,一年中的月份表示Uppercase M.Lowercase m适用于minute: -

new SimpleDateFormat("yyyy-mm-dd");
Run Code Online (Sandbox Code Playgroud)

应该: -

new SimpleDateFormat("yyyy-MM-dd");
Run Code Online (Sandbox Code Playgroud)