zur vorherigen Seite   zum Inhaltsverzeichnis   zur nächsten Seite

Antwort:

alter >= 21 && alter <= 35

Beliebige Reihenfolge (normalerweise)

In den meisten Situationen ist die Reihenfolge der Operanden von AND beliebig. Das Folgende

alter >= 21 && alter <= 35

ist äquivalent zu diesem:

alter <= 35 && alter >= 21

Ein false reicht aus, damit der gesamte Ausdruck false ist. Dabei spielt es keine Rolle, an welcher Stelle das false auftritt.

Warnung: Wenn ein Boole'scher Ausdruck Zuweisungsanweisungen oder Methodenaufrufe enthält, dann ist manchmal die Reihenfolge von Bedeutung. Der Grund dafür hat mit der vorher erwähnten Short-Circuit Optimierung zu tun. Meistens müssen Sie sich darüber keine Gedanken machen, aber merken Sie sich dieses potentielle Problem.

Kapitel 40 beschreibt diese Situation im Detail. Für die Beispiele in diesem Kapitel spielt die Reihenfolge der Operanden keine Rolle.

FRAGE 13:

Prüfen Sie diesen Ausduck:

( Monster.isAlive() && (hitpoints = Hero.attack()) < 50 )

Glauben Sie, dass die Reihenfolge der Operanden in diesem Ausdruck eine Rolle spielt?