[Java] Concatenation i++ et ++i
Résolu/Fermé
doctorpower
Messages postés
359
Date d'inscription
jeudi 14 mai 2009
Statut
Membre
Dernière intervention
4 décembre 2011
-
22 nov. 2009 à 21:16
doctorpower Messages postés 359 Date d'inscription jeudi 14 mai 2009 Statut Membre Dernière intervention 4 décembre 2011 - 23 nov. 2009 à 09:56
doctorpower Messages postés 359 Date d'inscription jeudi 14 mai 2009 Statut Membre Dernière intervention 4 décembre 2011 - 23 nov. 2009 à 09:56
A voir également:
- [Java] Concatenation i++ et ++i
- I showkeyplus - Télécharger - Utilitaires
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel football - Télécharger - Jeux vidéo
- I;per;2qble ✓ - Forum Linux / Unix
- I-nfo.fr - actualités tech - Télécharger - Médias et Actualité
5 réponses
Pacorabanix
Messages postés
3248
Date d'inscription
jeudi 23 août 2007
Statut
Membre
Dernière intervention
19 mai 2013
661
22 nov. 2009 à 21:22
22 nov. 2009 à 21:22
par exemple :
int i=5;
int j;
j= 3 + i++;
// maintenant j vaut 8.
int i=5;
int j;
j= 3 + ++i;
//maintenant j vaut 9.
ou encore :
int i=5;
int j;
j++= 3 + i;
//maintenant j vaut 9.
int i=5;
int j;
++j= 3 + i;
//maintenant j vaut 8.
int i=5;
int j;
j= 3 + i++;
// maintenant j vaut 8.
int i=5;
int j;
j= 3 + ++i;
//maintenant j vaut 9.
ou encore :
int i=5;
int j;
j++= 3 + i;
//maintenant j vaut 9.
int i=5;
int j;
++j= 3 + i;
//maintenant j vaut 8.
doctorpower
Messages postés
359
Date d'inscription
jeudi 14 mai 2009
Statut
Membre
Dernière intervention
4 décembre 2011
68
22 nov. 2009 à 23:52
22 nov. 2009 à 23:52
merci Pacorabanix, je comprend mais j'ai encore un doute.
Dans ton premier exemple la concactenation i++ s'effectue quand meme a la fin de l'operation ou pas ? Une fois que j=8, i prend-il quand meme la valeure 6?
Dans ton 3ieme exemple la concatenation j++ s'effectue apres l'operation sur l'ensemble du resulat ? Donc 8+1?
je ne suis pas sur d'avoir parfaitement compris
Dans ton premier exemple la concactenation i++ s'effectue quand meme a la fin de l'operation ou pas ? Une fois que j=8, i prend-il quand meme la valeure 6?
Dans ton 3ieme exemple la concatenation j++ s'effectue apres l'operation sur l'ensemble du resulat ? Donc 8+1?
je ne suis pas sur d'avoir parfaitement compris
Pacorabanix
Messages postés
3248
Date d'inscription
jeudi 23 août 2007
Statut
Membre
Dernière intervention
19 mai 2013
661
23 nov. 2009 à 00:15
23 nov. 2009 à 00:15
pour le premier : oui. Justement, c'est ce que fait i++. Quand l'affectation est exécutée, j = 3 + 5 car i++ est évalué comme . mais ensuite, et seulement après le calcul pour l'affectation de j, i est incrémenté, et passe à 6.
Dans mon troisième, en effet l'incrémentation (pas concaténation ;) ) s'effectue sur j après que l'affectation ait été calculée. d'abord on affecte 8 à j, et ensuite j est incrémenté de 1. onc à la fin de cette ligne il vaut 9.
Dans le 4ème exemple, j est d'abord incrémenté (et passe de 0 à 1) et ensuite on lui affecte 8, donc l'incrémentation n'a servi à rien ;).
Remarque :
Dans une boucle for par exemple, il n'y a aucune différence entre l'instruction i++ ou ++i dans les parenthèses du for : for(int i=0; i<10; i++) car ici la valeur de i n'est pas utilisée dans l'instruction "i++"
Dans mon troisième, en effet l'incrémentation (pas concaténation ;) ) s'effectue sur j après que l'affectation ait été calculée. d'abord on affecte 8 à j, et ensuite j est incrémenté de 1. onc à la fin de cette ligne il vaut 9.
Dans le 4ème exemple, j est d'abord incrémenté (et passe de 0 à 1) et ensuite on lui affecte 8, donc l'incrémentation n'a servi à rien ;).
Remarque :
Dans une boucle for par exemple, il n'y a aucune différence entre l'instruction i++ ou ++i dans les parenthèses du for : for(int i=0; i<10; i++) car ici la valeur de i n'est pas utilisée dans l'instruction "i++"
doctorpower
Messages postés
359
Date d'inscription
jeudi 14 mai 2009
Statut
Membre
Dernière intervention
4 décembre 2011
68
23 nov. 2009 à 02:44
23 nov. 2009 à 02:44
super, merci c'est clair et bien expliqué :)
Utilisateur anonyme
23 nov. 2009 à 08:51
23 nov. 2009 à 08:51
Salut,
Juste une petite remarque en forme de question doc:
Pourquoi appelles-tu celà concaténation? Le ou les + sont tous dans ces exemples des opérateurs arithmétiques.
Ce ne sont pas les mêmes + que par exemple ici où il y a bien concaténation:
Cordialement,
Dan
Juste une petite remarque en forme de question doc:
Pourquoi appelles-tu celà concaténation? Le ou les + sont tous dans ces exemples des opérateurs arithmétiques.
Ce ne sont pas les mêmes + que par exemple ici où il y a bien concaténation:
System.out.println("a = " + a);
Cordialement,
Dan
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
doctorpower
Messages postés
359
Date d'inscription
jeudi 14 mai 2009
Statut
Membre
Dernière intervention
4 décembre 2011
68
23 nov. 2009 à 09:56
23 nov. 2009 à 09:56
salut Dan,
je me suis embrouillé avec les termes, je parlais de l'incrementation et non de concatenation :)
je me suis embrouillé avec les termes, je parlais de l'incrementation et non de concatenation :)