Titel   Inhalt   Suchen   Index   DOC  Handbuch der Java-Programmierung, 3. Auflage
 <<    <     >    >>   API  Kapitel 5 - Ausdrücke

5.6 Zuweisungsoperatoren



Auch die Zuweisungsoperatoren in Java entsprechen im großen und ganzen den Zuweisungsoperatoren von C und C++. Ebenso gilt die Zuweisung nicht als Anweisung, sondern als Ausdruck, der einen Rückgabewert erzeugt.

Die Verwechslung der relationalen Operatoren Zuweisung und Gleichheitstest (= und ==) war in C eines der Kardinalprobleme, in Java kann sie nicht mehr so leicht passieren. Sind beispielsweise a und b vom Typ int, so hat zwar der Ausdruck a = b einen definierten Rückgabewert wie in C. Er darf jedoch nicht als Kontrollausdruck einer Schleife oder Verzweigung verwendet werden, da er nicht vom Typ boolean ist. Anders als in C, wo boolesche Werte durch Ganzzahlen simuliert werden, schließt Java diese Art von Fehler also von vorneherein aus. Nur wenn a und b vom Typ boolean sind, wird das Verwechseln von Zuweisung und Gleichheitstest vom Compiler nicht bemerkt.

 Hinweis 

Ebenso wie in C können auch in Java numerische bzw. bitweise Operatoren mit der Zuweisung kombiniert werden. Der Ausdruck a+=b addiert b zu a, speichert das Ergebnis in a und liefert es ebenfalls als Rückgabewert zurück. Tabelle 5.5 gibt eine Übersicht der in Java verfügbaren Zuweisungsoperatoren.

Operator Bezeichnung Bedeutung
= Einfache Zuweisung a = b weist a den Wert von b zu und liefert b als Rückgabewert.
+= Additionszuweisung a += b weist a den Wert von a + b zu und liefert a + b als Rückgabewert.
-= Subtraktionszuweisung a -= b weist a den Wert von a - b zu und liefert a - b als Rückgabewert.
*= Multiplikationszuweisung a *= b weist a den Wert von a * b zu und liefert a * b als Rückgabewert.
/= Divisionszuweisung a /= b weist a den Wert von a / b zu und liefert a / b als Rückgabewert.
%= Modulozuweisung a %= b weist a den Wert von a % b zu und liefert a % b als Rückgabewert.
&= UND-Zuweisung a &= b weist a den Wert von a & b zu und liefert a & b als Rückgabewert.
|= ODER-Zuweisung a |= b weist a den Wert von a | b zu und liefert a | b als Rückgabewert.
^= Exklusiv-ODER-Zuweisung a ^= b weist a den Wert von a ^ b zu und liefert a ^ b als Rückgabewert.
<<= Linksschiebezuweisung a <<= b weist a den Wert von a << b zu und liefert a << b als Rückgabewert.
>>= Rechtsschiebezuweisung a >>= b weist a den Wert von a >> b zu und liefert a >> b als Rückgabewert.
>>>= Rechtsschiebezuweisung mit Nullexpansion a >>>= b weist a den Wert von a >>> b zu und liefert a >>> b als Rückgabewert.

Tabelle 5.5: Zuweisungsoperatoren


 Titel   Inhalt   Suchen   Index   DOC  Handbuch der Java-Programmierung, 3. Auflage, Addison Wesley, Version 3.0.1
 <<    <     >    >>   API  © 1998-2003 Guido Krüger, http://www.javabuch.de