Hallo,
es geht um folgenden Code:
GregorianCalendar cal=new GregorianCalendar();
cal.set(Calendar.DAY_OF_MONTH,1);
cal.set(Calendar.MONTH,0);
cal.set(Calendar.YEAR, 2017);
SimpleDateFormat sdf=new SimpleDateFormat("dd.MM.YYYY");
System.out.println(sdf.format(cal.getTime()));
Wieso erhalte ich hier die Ausgabe 01.01.2016?
Wenn ich statt 2017 das Jahr 2018 angebe bekomme ich die richtige Ausgabe 01.01.2018
Hier einige andere Beispiele:
Jahr 2016 -> 01.01.2016
Jahr 2015 -> 01.01.2015
Jahr 2014 -> 01.01.2014
Jahr 2013 -> 01.01.2013
Jahr 2012 -> 01.01.2011 ???
Jahr 2011 -> 01.01.2010 ???
Jahr 2010 -> 01.01.2009 ???
Jahr 2009 -> 01.01.2009
Jahr 2008 -> 01.01.2008
Jahr 2007 -> 01.01.2007
Jahr 2006 -> 01.01.2005 ???
Jahr 2005 -> 01.01.2004 ???
Jahr 2004 -> 01.01.2004
Was läuft hier falsch?
lg, Markus
es geht um folgenden Code:
GregorianCalendar cal=new GregorianCalendar();
cal.set(Calendar.DAY_OF_MONTH,1);
cal.set(Calendar.MONTH,0);
cal.set(Calendar.YEAR, 2017);
SimpleDateFormat sdf=new SimpleDateFormat("dd.MM.YYYY");
System.out.println(sdf.format(cal.getTime()));
Wieso erhalte ich hier die Ausgabe 01.01.2016?
Wenn ich statt 2017 das Jahr 2018 angebe bekomme ich die richtige Ausgabe 01.01.2018
Hier einige andere Beispiele:
Jahr 2016 -> 01.01.2016
Jahr 2015 -> 01.01.2015
Jahr 2014 -> 01.01.2014
Jahr 2013 -> 01.01.2013
Jahr 2012 -> 01.01.2011 ???
Jahr 2011 -> 01.01.2010 ???
Jahr 2010 -> 01.01.2009 ???
Jahr 2009 -> 01.01.2009
Jahr 2008 -> 01.01.2008
Jahr 2007 -> 01.01.2007
Jahr 2006 -> 01.01.2005 ???
Jahr 2005 -> 01.01.2004 ???
Jahr 2004 -> 01.01.2004
Was läuft hier falsch?
lg, Markus