Bien le bonjour,

En plein recherche d'emploi je fais pas mal de test, et je me suis retrouvé devant une incompréhension. Je sollicite donc la communauté de développeur JAVA, pour me sortir de cette impasse.

Quel est le résultat du code suivant

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
 
	Integer i, j;
	i = new Integer(2);
	j = i++;
	System.out.println(i);
	System.out.println(j);
Le résultat est donc i = 3 et j = 2 !!

Mais pourquoi ? Je connais les concepts d'autoboxing, et aussi des références objets, j'ai bien le sentiment que cela provient de là... mais je n'ai pas d'explication rationnelle.

Il suffit de changer i++ par i + 1 !! Ca me rend fou