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 Sie verwenden Klammern. Betrachten Sie das Folgende:

!preis < 50
-----
illegal: kann nicht für eine arithmetische Variable verwendet werden

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

FRAGE 24:

Betrachten Sie 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.