Compound Assignment Operators · Opérateurs d'affectation composés
| English | Français |
|---|---|
| compound assignment operator/ˈkɒmpaʊnd əˈsaɪnmənt ˈɒpəreɪtə/ | opérateur d'affectation composé |
Shorthand for updating
- Updating a variable from itself is so common it has shorthand.
- A compound assignment operator 复合赋值运算符 combines an operation with
=. x += 3;means exactlyx = x + 3;.- The family:
+=,-=,*=,/=,%=.
Raccourci pour la mise à jour
- Mettre à jour une variable à partir d'elle-même est si courant qu'il possède un raccourci.
- Un opérateur d'affectation composé 复合赋值运算符 combine une opération avec
=. x += 3;signifie exactementx = x + 3;.- La famille :
+=,-=,*=,/=,%=.
The five operators
x += 5→ add5tox.x -= 5→ subtract5.x *= 2→ doublex.x /= 2→ halvex(int rules apply).x %= 3→ replacexwithx % 3(the remainder).- Each reads the current value, applies the op, and stores the result back.
Les cinq opérateurs
x += 5→ ajoute5àx.x -= 5→ soustrait5.x *= 2→ doublex.x /= 2→ divisexpar deux (les règles int s'appliquent).x %= 3→ remplacexparx % 3(le reste).- Chacun lit la valeur actuelle, applique l'opérateur, et stocke le résultat à nouveau.
Increment and decrement
x++adds1tox(same asx += 1orx = x + 1).x--subtracts1fromx.- These are extremely common in loops to step a counter.
- They change the variable in place — no
=needed.
Incrément et décrémentation
x++ajoute1àx(identique àx += 1oux = x + 1).x--soustrait1dex.- Ce sont des opérateurs extrêmement courants dans les boucles pour incrémenter un compteur.
- Ils modifient la variable sur place — aucun
=n'est nécessaire.
Same type rules apply
- Compound operators obey the same type rules as the long form.
int x = 7; x /= 2;gives3(int division still truncates).x += 2.5;on anintwould need care — the type ofxdoesn't change.- The shorthand is only shorter; the arithmetic is identical.
Les mêmes règles de type s'appliquent
- Les opérateurs composés obéissent aux mêmes règles de type que la forme longue.
int x = 7; x /= 2;donne3(la division d'entiers tronque toujours).x += 2.5;sur unintnécessiterait prudence — le type dexne change pas.- Le raccourci est uniquement plus court ; l'arithmétique est identique.
x += 3 is exactly x = x + 3 — the type rules don't change. So int x = 7; x /= 2; still gives 3 (int division truncates), not 3.5. Compound operators are pure shorthand; if the long form would truncate or overflow, so does the short form. And x++ is just x += 1.
x += 3 est exactement x = x + 3 — les règles de type ne changent pas. Donc int x = 7; x /= 2; donne toujours 3 (division d'entiers tronque), pas 3.5. Les opérateurs composés sont un pur raccourci ; si la forme longue tronquerait ou déborderait, le raccourci ferait pareil. Et x++ est juste x += 1.
Tracing a counter:
int x = 10;x += 5;→xis15.x *= 2;→xis30.x--;→xis29.x %= 5;→xis4(29 % 5).
Tracé d'un compteur :
int x = 10;x += 5;→xest15.x *= 2;→xest30.x--;→xest29.x %= 5;→xest4(29 % 5).
Compound assignment operators (+=, -=, *=, /=, %=) are shorthand: x += 3 means x = x + 3. x++ and x-- add or subtract 1. They obey the same type rules as the long form — int division in x /= 2 still truncates.
Les opérateurs d'affectation composée (+=, -=, *=, /=, %=) sont des raccourcis : x += 3 signifie x = x + 3. x++ et x-- ajoutent ou soustraient 1. Ils obéissent aux mêmes règles de type que la forme longue — la division int dans x /= 2 tronque toujours.
Stepping a counter · Incrémenter un compteur
Each compound operator updates x in place. · Chaque opérateur composé met à jour x sur place.
x += 3 is exactly the same as... · x += 3 est exactement la même chose que...
Compound assignment is shorthand for x = x + 3. · L'affectation composée est une abréviation pour x = x + 3.
int x = 10; x += 5; x *= 2; What is x? · int x = 10; x += 5; x *= 2; Quelle est la valeur de x ?
10 → 15 → 30.
int x = 7; x /= 2; What is x? · int x = 7; x /= 2; Quelle est la valeur de x ?
int division truncates: 7/2 = 3. · La division d'entiers tronque : 7/2 = 3.
x++ has the same effect as... · x++ a le même effet que...
x++ adds 1, same as x += 1. · x++ ajoute 1, identique à x += 1.
Compound operators follow the same type rules as the long form (so x /= 2 on an int truncates). · Les opérateurs composés suivent les mêmes règles de type que la forme longue (donc x /= 2 sur un int tronque).
Shorthand doesn't change the arithmetic — int division still truncates. · L'abréviation ne change pas l'arithmétique — la division d'entiers tronque toujours.