Java stellt – ähnlich wie C, C++ oder JavaScript – eine Reihe bekannter Operatoren bereit. Neben den Grundoperationen Addition (+), Subtraktion (-), Multiplikation (*) und Division (/) bietet Java auch die entsprechenden Varianten als zusammengesetzte Zuweisungen: +=, -=, *= und /=.
Eine Besonderheit: Die Operatoren + und += werden nicht nur für arithmetische Berechnungen verwendet, sondern auch zur Verkettung von Strings.
Arithmetische Operatoren
Binäre arithmetische Operatoren sind Operatoren, die zwei Operanden benötigen, um eine Rechenoperation durchzuführen. „Binär“ bedeutet hier nicht „im Zahlensystem“, sondern „zweistellig“. Also: ein Operator, zwei Operanden.
Die binären arithmetischen Operatoren in Java
|
Operator |
Bedeutung |
Beispiel |
Ergebnis |
|
+ |
Addition |
5 + 3 |
8 |
|
- |
Subtraktion |
10 - 4 |
6 |
|
* |
Multiplikation |
7 * 2 |
14 |
|
/ |
Division |
20 / 5 |
4 |
|
% |
Modulo (Rest einer Division) |
17 % 5 |
2 |
Diese Operatoren arbeiten immer mit zwei Werten (z. B. a + b). Das unterscheidet sie von unären Operatoren wie -a (Negation) oder ++a (Inkrement), die nur einen Operanden benötigen.
Typische Eigenschaften
- Sie können mit Ganzzahlen (int, long) und Gleitkommazahlen (float, double) verwendet werden.
- Bei gemischten Datentypen wird der kleinere automatisch in den größeren Typ konvertiert (z. B. int + double → Ergebnis ist double).
- Die Reihenfolge der Auswertung folgt der bekannten mathematischen Regel „Punkt vor Strich“: Multiplikation, Division und Modulo haben höhere Priorität als Addition und Subtraktion.
Vergleichsoperatoren
In Java gibt es eine klar definierte Gruppe von Vergleichsoperatoren (auch relationale Operatoren genannt). Sie dienen dazu, zwei Werte oder Ausdrücke miteinander zu vergleichen. Das Ergebnis ist immer ein boolean (true oder false).
Übersicht der Vergleichsoperatoren in Java
|
Operator |
Bedeutung |
Beispiel |
Ergebnis |
|
== |
gleich |
5 == 5 |
true |
|
!= |
ungleich |
5 != 3 |
true |
|
> |
größer als |
7 > 4 |
true |
|
< |
kleiner als |
2 < 9 |
true |
|
>= |
größer oder gleich |
6 >= 6 |
true |
|
<= |
kleiner oder gleich |
3 <= 5 |
true |
Wichtige Hinweise
- Diese Operatoren funktionieren mit Zahlen (int, double, …) und auch mit Zeichen (char), da char intern als Zahl gespeichert wird.
- Für Objekte (z. B. Strings) darf man nicht == verwenden, da damit nur die Referenz (Speicheradresse) verglichen wird. Stattdessen nutzt man die Methode .equals().
Zusammengesetzte Zuweisungen
Zusammengesetzte Zuweisungen sind eine Kurzschreibweise in Java (und vielen anderen Sprachen), um eine Operation mit einer Variablen durchzuführen und das Ergebnis direkt wieder in derselben Variablen zu speichern.
Statt also zwei Schritte zu schreiben – erst rechnen, dann zuweisen – fasst man beides in einem Operator zusammen.
Beispiel ohne zusammengesetzter Zuweisung:
int a = 5;
a = a + 3;
Beispiel mit zusammengesetzter Zuweisung:
int a = 5;
a += 3;
Beide Varianten führen dazu, dass a den Wert 8 hat.
Übersicht der wichtigsten zusammengesetzten Zuweisungen
|
Operator |
Entspricht |
Beispiel |
Ergebnis |
|
|
+= |
a = a + b |
a += 2 |
addiert 2 zu a |
|
|
-= |
a = a - b |
a -= 4 |
zieht 4 von a ab |
|
|
*= |
a = a * b |
a *= 3 |
multipliziert a mit 3 |
|
|
/= |
a = a / b |
a /= 2 |
teilt a durch 2 |
|
|
%= |
a = a % b |
a %= 5 |
Rest der Division durch 5 |
|
|
&= |
a = a & b |
bitweises UND |
||
|
` |
=` |
`a = a |
b` |
bitweises ODER |
|
^= |
a = a ^ b |
bitweises XOR |
||
|
<<= |
a = a << b |
Linksverschiebung |
||
|
>>= |
a = a >> b |
Rechtsverschiebung |
||
|
>>>= |
a = a >>> b |
Rechtsverschiebung ohne Vorzeichen |
Zusammengefasst
- Sie verkürzen den Code und machen ihn lesbarer.
- Sie ändern den Wert der Variablen direkt.
- Sie sind nicht nur für arithmetische Operatoren verfügbar, sondern auch für bitweise Operatoren.
