Operatoren
Kurz: Symbole, die eine Operation auf einem oder mehreren Werten ausführen — von einfacher Arithmetik (+, -) über Vergleiche (==, <) bis zu logischer Verknüpfung (&&, ||).
Genauer: Operatoren lassen sich grob in Kategorien einteilen: arithmetische (Rechenoperationen), Zuweisungs- (Werte setzen/verändern), Vergleichs- (Ergebnis ist wahr/falsch) und logische Operatoren (Bedingungen verknüpfen). Enthält ein Ausdruck mehrere Operatoren, entscheidet die Operator-Priorität, in welcher Reihenfolge sie ausgewertet werden.
Im Detail
Ein Operator kombiniert einen oder mehrere Werte (die “Operanden”) zu einem neuen Ergebniswert. Nach der Anzahl der Operanden unterscheidet man:
- Unäre Operatoren: brauchen nur EINEN Operanden, z. B. das Vorzeichen (
-5) oder die Negation (!wahr). - Binäre Operatoren: brauchen ZWEI Operanden, die weit überwiegende Mehrheit aller Operatoren (
3 + 4,a == b). - Ternäre Operatoren: brauchen DREI Operanden — der bekannteste ist der bedingte Ausdruck
bedingung ? wennWahr : wennFalsch, eine kompakte Kurzform für ein einfaches if…else.
alter >= 18 ? "volljährig" : "minderjährig"
// entspricht:
// if (alter >= 18) { "volljährig" } else { "minderjährig" }Eine besondere Gruppe sind Zusammengesetzte Zuweisungsoperatoren (siehe Zuweisungsoperatoren) wie +=, die eine Operation und eine Zuweisung in einem Schritt kombinieren (x += 5 entspricht x = x + 5) — kürzer zu schreiben und weniger fehleranfällig, weil der Variablenname nur einmal statt zweimal auftaucht.
Viele Sprachen erlauben außerdem Operator-Überladung — dieselben Symbole (+, ==) auch für selbstdefinierte Typen mit einer eigenen, sinnvollen Bedeutung zu belegen (z. B. + für das Zusammenfügen zweier eigener Vektor-Objekte). Das kann Code sehr lesbar machen, wird aber leicht missbraucht, wenn die überladene Bedeutung nicht der intuitiven Erwartung entspricht (ein +, das z. B. heimlich eine Datei löscht, wäre extrem überraschend und schlechter Stil).
Siehe auch: Arithmetische Operatoren, Vergleichsoperatoren, Logische Operatoren, Operator-Priorität