Java Schnellstart – Logikoperatoren

Neben Vergleichsoperatoren bietet Java zusätzlich Logikoperatoren an. Was du mit Logikoperatoren machen kannst und wie sie dir dabei helfen, deine Programme flexibler zu machen, erfährst du in dieser Lektion.

Logikoperatoren - Was ist das?

Logische Operatoren sind Operatoren die, genauso wie Vergleichsoperatoren, einen Wert vom Typ Boolean zurückliefern. Anders als Vergleichsoperatoren werden hier jedoch bestehende Bedingungen (also booleans) miteinander verknüpft.

  • UND/AND: Damit ist es zum Beispiel möglich, eine Bedingung zu schaffen, bei der zwei Bedingungen wahr sein müssen.
  • ODER/OR: Alternativ muss eine Bedingung bestehen, bei der nur eine von zwei Bedingungen wahr sein muss, damit die komplette "Hauptbedingung" wahr ist.
  • NICHT/NOT: Es gibt aber auch logische Operatoren, die keine Bedingung miteinander verknüpft, sondern verneint, das bedeutet eine Bedingung ist dann wahr, wenn sie nicht wahr ist (aus false wird true). Andersherum wird aus dem Wert "true" der Wert "false".

Logisches AND (&&)

Bei dem UND-Operator ist die Hauptbedingung dann wahr, wenn genau beide Bedingungen wahr sind. Im Code sieht das dann folgendermaßen aus:

boolean bedingung1 = 5 == 5;
boolean bedingung2 = true;
boolean bedingung3 = bedingung1 && bedingung2; // true

boolean bedingung4 = false;
boolean bedingung5 = bedingung1 && bedingung4; // false

Für das logische AND verwendet man, wie du siehst, zweimal das "UND-Zeichen" &&.

Logisches OR (||)

Bei dem logischen ODER-Operator müssen nicht beide Bedingungen wahr sein, damit die Hauptbedingung wahr ist, sondern mindestens eine Bedingung muss wahr sein. Hierbei verwendet man nun das zwei Striche (||)

boolean bedingung1 = true;
boolean bedingung2 = false;
boolean bedingung3 = bedingung1 || bedingung2; // true

boolean bedingung4 = false;
boolean bedingung5 = bedingung2 || bedingung4; // false

Logisches NOT (!)

Mit dem logischen NOT ist es möglich eine Aussage bzw. Bedingung zu verneinen, das bedeutet aus einem true-Wert wird false und aus einem false-Wert wird true.

boolean bedingung1 = true;
boolean bedingung2 = !bedingung1; // false
boolean bedingung3 = !bedingung2; // true

Mehr als zwei Bedingungen

Du kannst OR und AND auch mit mehr als zwei Bedingungen verwenden:

boolean bedingung1 = true;
boolean bedingung2 = true;
boolean bedingung3 = true;
boolean bedingung4 = bedingung1 && bedingung2 && bedingung3; // true, alle Bedingungen müssen true sein
boolean bedingung5 = bedingung1 || bedingung2 || bedingung3; // true, mind. eine Bedingung muss true sein

Logikoperatoren mischen

Weiterhin kannst du mehrere logische Operatoren mischen:

boolean bedingung1 = false;
boolean bedingung2 = false;
boolean bedingung3 = true;

boolean bedingung4 = bedingung1 || !bedingung2 && bedingung3; // true

Eine wichtige Regel lautet: UND vor ODER. Das ist dasselbe wie bei der Multiplikationsregel "Punkt-Vor-Strich". Hier wenden wir das Prinzip lediglich auf Logikoperatoren an.

Fazit

Logische Operatoren sind hilfreiche Werkzeuge, wenn du bspw. If-Verzweigungen verwenden möchtest. Was damit gemeint ist, erfährst du in der nächsten Lektion.