(4 < 8 ) && ( 8 < 0 ) && ( 100 > 45 ) (T && F) && ( 100 > 45 ) F && ( 100 > 45 )
.... Auswertung stoppt mit dem Wert false
für den gesamten Ausdruck.
&&
-Operatoren
Tritt mehr als ein &&
-Operator in einem Ausdruck auf,
so werden diese &&
-Operatoren gruppiert. Das Ergebnis einer solchen Gruppe wird als normaler einzelner Boole'scher Wert behandelt und sofern er true
ist, über die rechts daneben stehende &&
-Operation mit dem dann folgenden Operanden verknüpft.
Nehmen wir an V, W, X, Y, und Z stehen für Boole'sche Operanden. Diese werden für die Auswertung von links nach rechts wie folgt gruppiert:
V && W && X && Y && Z (V && W) && X && Y && Z ((V && W) && X ) && Y && Z (((V && W) && X ) && Y) && Z
In der letzten Zeile des obigen Beispiels hat jeder &&
-Operator
einen Operanden links und einen rechts. Die sogenannte Assoziativität eines Operators beschreibt, wie seine Operanden in solchen Ausdrücken wie oben gruppiert werden. Der &&
-Operator hat eine Assoziativität von links nach rechts, so wie die meisten Operatoren. Es gibt allerdings auch Operatoren mit anderer Assoziativität.
Sollte dies alles etwas verwirrend klingen, so macht Euch keine allzu große Sorgen. Was Ihr mitnehmen solltet ist, dass die Auswertung von Ausdrücken mit mehreren &&
-Operatoren den gesamten Ausdruck von links nach rechts nach einem false
absucht. Das erste false
beendet die Auswertung, und das Ergebnis des gesamten Ausdrucks ist false
. Nur dann, wenn jeder Operand true
ist, ist der gesamte Ausdruck true
.
Welchen Wert ergibt folgender Ausdruck:
(4 < 8 ) || ( 8 < 0 ) || ( 100 > 45 )