months in calender starts from 0
0 =january
11=december
if you see the source code of Calendar class you will find public final static int JANUARY = 0;
similarily for december public final static int DECEMBER = 11;
Check the source code here
solved why use different date format makes different result in same date?