Video: Words at War: Der Fuehrer / A Bell For Adano / Wild River 2025
A sammensatt tilordningsoperatør er en operatør som utfører en beregning og en oppgave samtidig. Alle Java's binære aritmetiske operatører (det vil si de som jobber på to operander) har tilsvarende sammensatte oppdragsoperatører.
Operator | Beskrivelse |
+ = | Tillegg og tildeling |
- = | Subtraksjon og tildeling |
* = | Multiplikasjon og tildeling < / = |
Divisjon og oppgave | % = |
Gjenværende og oppgave |
|
a + = 10;
er ekvivalent med
a = a + 10;
Også erklæringen
z * = 2;
er ekvivalent med
z = z * 2;
For å unngå forvirring, bruk sammensatte tilordningsuttrykk av seg selv, ikke i kombinasjon med andre uttrykk. Vurder disse uttalelsene:
int a = 2;
int b = 3;
Er
a
satt til
7
eller
8
?
Med andre ord er den tredje setningen ekvivalent med
a = a * b + 1; // Dette ville gi 7 som resultatet
eller
a = a * (b + 1); // Dette ville gi 8 som resultatet
Ved første øyekast, kan du forvente at svaret er
7
, fordi multiplikasjon har høyere prioritet enn tillegg. Men oppdraget har den laveste forrang for alle, og multiplikasjonen her utføres som en del av oppdraget. Som et resultat blir tillegget utført før multiplikasjonen - og svaret er
8
. (Gotcha!)