@@ -4,15 +4,17 @@ Rangfolge der Operatoren, von stark zu schwach bindend.
|
|||||||
|
|
||||||
| Typ | Symbole | Beispiele | Anmerkungen |
|
| Typ | Symbole | Beispiele | Anmerkungen |
|
||||||
| --------------------------------- | ------------- | ----------------------- | ----------------------------|
|
| --------------------------------- | ------------- | ----------------------- | ----------------------------|
|
||||||
| Unäre Operatoren | -, !, ++, -- | | |
|
| Unäre Operatoren | -, !, ++, -- | -7 * 4, !myBoolean | |
|
||||||
| Multiplikation, Division, Modulus | *, /, % | | |
|
| Multiplikation, Division, Modulus | *, /, % | 7 % 4 | `/ 0` erzeugt Exception |
|
||||||
| Addition, Subtraktion | +, - | | |
|
| Addition, Subtraktion | +, - | 7 + 4 | |
|
||||||
| Relationale Operatoren | <, >, <=, >= | | |
|
| Relationale Operatoren | <, >, <=, >= | y > x | |
|
||||||
| Gleichheits-Operatoren | ==, != | | |
|
| Gleichheits-Operatoren | ==, != | y != x | Referenz bei Objekten, nicht mi equals verwechseln! Sonderfall String!
|
||||||
| Logische Operatoren | &, \| | | |
|
| Logische Operatoren | &, \| | myBool & yourBool | Beide Ausdrücke immer ausgewertet |
|
||||||
| Short-Circuit-Operatoren | &&, \|\| | | |
|
| Short-Circuit-Operatoren | &&, \|\| | myBool || yourBool | Auswertung bei Klarheit abgebrochen, damit ggf. keine Seiteneffekte |
|
||||||
| Zuweisungs-Operatoren | =, +=, -= | | |
|
| Zuweisungs-Operatoren | =, +=, -= | x += 5 | Zuweisung sehr niedrig priorisiert, |
|
||||||
|
|
||||||
|
- Bei gleicher Priorität von links nach rechts, durch Klammerung kann Vorrang geändert werden.
|
||||||
|
-
|
||||||
- Wo ist der tenäre Operator?
|
- Wo ist der tenäre Operator?
|
||||||
|
|
||||||
## Stolperfallen
|
## Stolperfallen
|
||||||
@@ -21,4 +23,5 @@ Rangfolge der Operatoren, von stark zu schwach bindend.
|
|||||||
- Short-circuit verhindert Ausführung der weiteren Anweisungen. Darauf achten, ob Seiteneffekte ausgeführt werden!
|
- Short-circuit verhindert Ausführung der weiteren Anweisungen. Darauf achten, ob Seiteneffekte ausgeführt werden!
|
||||||
- Operatoren können in seltenen Fällen unterschiedliche Bedeutung haben (boolean vs. Zahlen, Bit-Shifting)
|
- Operatoren können in seltenen Fällen unterschiedliche Bedeutung haben (boolean vs. Zahlen, Bit-Shifting)
|
||||||
- Nicht alle sind bei allen Datentypen erlaubt (`*=`)
|
- Nicht alle sind bei allen Datentypen erlaubt (`*=`)
|
||||||
|
- `==` und `equals` bei Objekten beachten. String ist ein Sonderfall, da sogar Art der Erzeugung relevant.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user