zur vorherigen Seite   zum Inhaltsverzeichnis   zur nächsten Seite

Antwort:

Nein. In diesem fehlerhaften Fragment, wird das NOT (das !) direkt auf preis angewandt.

Präzedenz von NOT

Der NOT-Operator besitzt eine hohe Präzedenz. Daher wird er zuerst durchgeführt (vor arithmetischen und relationalen Operatoren), es sei denn wir verwenden Klammern. Betrachten wir das Folgende:

!preis < 50
-----
illegal: kann nicht fuer eine arithmetische Variable verwendet werden

Da ! eine hohe Präzedenz besitzt, wird das oben stehende NOT auf preis angewendet. Das wird nicht funktionieren, da preis ein Integer ist und NOT sich nur auf Boole'sche Werte anwenden lässt.

FRAGE 24:

Betrachten wir dieses Fragment:

if ( preis < 50  )
  System.out.println("akzeptable Schuhe");
else
  System.out.println("Schuhe ablehnen");

Ist das neue Fragment äquivalent zum ursprünglichen Fragment:

if (  !(preis < 50)  )
  System.out.println("Schuhe ablehnen");
else
  System.out.println("akzeptable Schuhe");

Versuchen Sie ein paar Preise für jedes Fragment, um zu sehen, ob sie äquivalent sind.