Bonjour,

J'ai un petit souci tout bête avec la classe Calendar, je n'ai rien trouvé dans la doc pour m'expliquer ce qui se passe.

Voici mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
GregorianCalendar c = new GregorianCalendar();
c.set(
	Integer.parseInt("2006"),
	Integer.parseInt("7"),
	Integer.parseInt("1")
);
 
System.out.println(c.get(Calendar.DATE) + "-" + c.get(Calendar.MONTH) + "-" + c.get(Calendar.YEAR));
// on prend la date de la veille
c.add(Calendar.DATE, -1);
System.out.println(c.get(Calendar.DATE) + "-" + c.get(Calendar.MONTH) + "-" + c.get(Calendar.YEAR));
Et voici ce que j'obtiens dans la console :

A ma connaissance (on m'aurait menti ?!?) le 31 juin n'existe pas, quelqu'un pourrait-il éclairer ma lanterne et m'indiquer où je fais l'erreur (au final bien sûr j'aimerais obtenir que la veille du 1er juillet est bien le 30 juin...).

Merci.