JAVA
giehtp
-
KX Messages postés 19031 Statut Modérateur -
KX Messages postés 19031 Statut Modérateur -
Bonjour,
quelle est difference entre ces deux programme en java au niveau d'exécution.
premier:
int n= 3;
n+=2;
// n=5
second:
int n= 3;
n=n+2;
//n=5
quelle est difference entre ces deux programme en java au niveau d'exécution.
premier:
int n= 3;
n+=2;
// n=5
second:
int n= 3;
n=n+2;
//n=5
3 réponses
-
n'y a pas de différence:
le premier utilise l'incrémentation, ce qui te permet de raccourcir ta ligne
mais à l'éxécution, c'est éxactement pareil -
Il ny en a pas! Le premier est juste plus correct, en effet, lorsque tu ecris des longs algos, la première est plus rapide à ecrire.. Pareil pour l'incrementation...
N = n +1 ou n++ signifie la même chose :) -
Je ne suis pas sûr que ça change grand chose en Java, mais dans certains langages il y a une légère subtilité, à savoir que l'appel de l'opérateur unaire += est plus rapide à exécuter puisqu'il n'a besoin de manipuler que 2 espaces mémoire (le résultat, et la valeur d'ajout) au lieu de 3 pour + (le résultat, et les deux valeurs) car même s'il s'agit du même espace mémoire (résultat et première valeur) c'est impossible à détecter et donc l'opération est plus lourde inutilement... Donc += est à privilégier dans ce cas.
De même pour l'opérateur ++ qui est clairement plus rapide puisqu'il n'y a pas du tout de valeur à évaluer, l'opération d'addition peut ainsi être optimisée pour l'ajout de 1.