Ein Leitfaden für Anfänger zu logischen und relationalen Operatoren in Java

Ein Leitfaden für Anfänger zu logischen und relationalen Operatoren in Java

Operatoren sind Symbole, die verwendet werden, um Operationen mit Werten, Variablen oder Anweisungen auszuführen. Die Ausdrücke, an denen sie diese Aktionen ausführen, werden Operanden genannt. Die Operationen geben ein boolesches Ergebnis (wahr oder falsch) für Vergleichs-, Gleichheits- und logische Operatoren zurück.





Die Anzahl der Operanden, die ein Operator verwendet, bestimmt seinen Typ. Ein Operator, der einen Operanden verwendet, wird 'unär' genannt. Ein Operator, der zwei Operanden benötigt, wird als 'binär' bezeichnet.





Lesen Sie weiter, um zu erfahren, wie Sie logische und relationale Operatoren in Java verwenden können. Besser noch, die meisten Programmiersprachen verwenden dieselben Operatoren, sodass Sie dieses Wissen an anderer Stelle anwenden können.





Logische Operatoren

Sie werden verwendet, um beim Programmieren logische Anweisungen zu erstellen. In Java gibt es sechs logische Operatoren. Die folgende Tabelle fasst sie zusammen.

OperatorNameTyp
|Boolesches logisches ODERBinär
&Boolesches logisches UNDBinär
^Boolesche Logik Exklusiv ODERBinär
||Bedingtes ODERBinär
&&Bedingtes UNDBinär
!Logisches NICHTEinstellig

Wenn Sie überprüfen möchten, ob eine oder beide Bedingungen zutreffen, verwenden Sie diesen Operator. Eine Bedingung ist ein Ausdruck, der entweder wahr oder falsch sein kann.



Boolesches logisches inklusives ODER (|)

Das logische ODER prüft, ob beide Operanden wahr sind, bevor der Ausdruck ausgewertet wird.

if ( dob <2005 | height <= 5){
money++;
}

Das obige Beispiel gibt jemandem mehr Geld, wenn sein Geburtsdatum (Geburtsdatum) weniger als 2005 beträgt oder wenn seine Größe kleiner oder gleich 1,50 m ist.





Boolesches logisches UND (&)

Dieser Operator wird verwendet, um zu überprüfen, ob beide Bedingungen wahr sind, bevor ein bestimmter Ausführungspfad im Programm verwendet wird. Es prüft zuerst, ob beide Bedingungen wahr sind, bevor der gesamte Ausdruck ausgewertet wird.

Verwandte: So validieren Sie Strings mit booleschen Methoden in Python





Boolesches logisches exklusives ODER (^)

Wenn Sie überprüfen möchten, ob eine der Bedingungen zutrifft, aber nicht beide, dann ist dies der zu verwendende Operator. Die Wahrheitstabelle unten fasst die Ergebnisse zusammen, die Sie sehen werden, wenn Sie sie verwenden.

Ausdruck1Ausdruck2Ausdruck1 ^ Ausdruck2
falschfalschfalsch
falschwahrwahr
wahrfalschwahr
wahrwahrfalsch

Boolesches bedingtes UND (&&)

Dieser Operator ähnelt dem logischen UND. Der Unterschied besteht darin, dass zuerst überprüft wird, ob die Bedingung auf der linken Seite wahr ist, bevor die Bedingung auf der rechten Seite überprüft wird.

Wenn sich herausstellt, dass der linke Teil falsch ist, wird die Ausführung sofort beendet. Andernfalls wird die Bewertung des rechten Teils fortgesetzt. Diese Funktion wird als Kurzschlussauswertung bezeichnet.

Sehen Sie sich die Wahrheitstabelle unten an, um Ihr Verständnis dieses Operators zu begründen.

Ausdruck1Ausdruck2Ausdruck1 && Ausdruck2
falschfalschfalsch
falschwahrfalsch
wahrfalschfalsch
wahrwahrwahr

Bedingtes ODER (||)

Wenn eine der Bedingungen falsch ist, springt die Ausführung zum nächsten Teil des Programms. Mit anderen Worten, beide Bedingungen müssen wahr sein.

Dieser Operator ähnelt dem logischen ODER. Es überprüft auch, ob eine oder beide Bedingungen erfüllt sind, bevor bestimmten Code ausgeführt wird.

Ähnlich wie beim bedingten UND verwendet auch das logische ODER die Kurzschlussauswertung. Es prüft zuerst, ob der linke Operand wahr ist, bevor der rechte ausgewertet wird.

Verwandt: Was ist ein Konstruktor in Java und wie wird er verwendet?

Laptop erkennt externe Festplatte nicht

Wenn sich herausstellt, dass die Bedingung auf der linken Seite wahr ist, muss die Bedingung auf der rechten Seite nicht überprüft werden. Andernfalls wird die Auswertung rechts fortgesetzt.

Logisch NICHT (!)

Dieser Operator wird verwendet, um eine Bedingung zu negieren. Es kehrt einfach die Bedeutung dessen um, worauf es operiert.

if(!(x>5)){
// statements
}

Die obige Anweisung bedeutet, dass wenn 'x ist größer als 5' NICHT wahr ist, dann führen Sie die Anweisungen innerhalb der wenn .

Beachten Sie die Verwendung von runden Klammern mit dem Ausdruck (x>5). Wenn Sie diese Klammern beim Schreiben Ihres Programms nicht einfügen, erhalten Sie einen Kompilierungsfehler. Der Grund ist, weil ! ist ein unärer Operator, der auf eine Bedingung reagiert. Ohne die Klammern würde der Compiler es als den Operator interpretieren, der auf das x wirkt, nicht auf x>5.

Das Einfügen von Klammern dient nicht nur dazu, dem Compiler die korrekte Interpretation eines Ausdrucks zu ermöglichen. Sie können dem Programmierer auch als Möglichkeit dienen, komplexere Ausdrücke besser zu verstehen. Sehen Sie sich das folgende Beispiel an:

age >= 7 && height <5

Manchen Leuten fällt es vielleicht schwer, der Logik zu folgen. Daher ziehen es einige Programmierer aus Gründen der Lesbarkeit vor, redundante Klammern hinzuzufügen:

(age >= 7) && (height <5)

Relationale Operatoren

Diese Operatoren werden verwendet, um einfache Beziehungen zwischen Operanden zu vergleichen.

OperatorName
>Größer als
<Weniger als
> =Größer als oder gleich wie
<=Weniger als oder gleich

Relationale Operatoren sind ziemlich einfach zu verstehen, da sie alle dieselbe Bedeutung haben wie die üblichen algebraischen Operatoren, mit denen Sie bereits vertraut sind. Das heißt, > und < haben dieselbe Bedeutung, die Sie bereits kennen, wie in der obigen Tabelle.

if( x <= 7 ){
x++;
}

Obenstehendes wenn -Anweisung prüft, ob x kleiner oder gleich 7 ist. Wenn wahr, dann werden die Anweisungen in den Klammern ausgeführt, andernfalls nicht.

Jetzt wäre ein guter Zeitpunkt, Gleichheitsoperatoren zu erwähnen. Es gibt nur zwei davon ( gleich, == und !=, nicht gleich ). Wie der Name schon sagt, werden sie verwendet, um die Gleichheit zwischen zwei Operanden zu testen.

Verwandt: Erstellen und Ausführen von Operationen auf Arrays in Java

Der Gleichheitsoperator (==) ist nicht mit dem Zuweisungsoperator (=) zu verwechseln. Programmieranfänger verwechseln gerne beides. Dies ist sinnvoll, da in der Algebra das Symbol (=) verwendet wird, um Gleichheit auszudrücken. Das ist beim Programmieren aber nicht richtig.

Der Zuweisungsoperator (=) weist einer Variablen einen Wert zu, während der Gleichheitsoperator (==) auf Gleichheit prüft. Sehen Sie sich das folgende Beispiel an, um den Unterschied zu verstehen:

if(x=5){
// statements
}

Der obige Code wird immer ausgeführt, unabhängig davon, ob x tatsächlich gleich 5 ist. Währenddessen wird der folgende Code nur ausgeführt, wenn x gleich 5 ist. Daher ist es wichtig, die beiden nicht zu verwechseln.

if(x==5){
// statements
}

Die beiden erwähnten Gleichheitsoperatoren haben die gleiche Priorität, jedoch niedriger als die von Vergleichsoperatoren.

Auch relationale Operatoren haben dieselbe Priorität. Die Ausführung dieser Operatoren beginnt von links nach rechts.

Weitere Überlegungen zu Java-Operatoren

Sie müssen bemerkt haben, dass in einigen Beispielen Leerzeichen zwischen einigen Operatoren und ihren Operanden vorhanden sind, während dies in anderen nicht der Fall ist.

Die Abwesenheit/Anwesenheit dieses Raums sollte Sie nicht beunruhigen. Der Compiler ignoriert es. Daher bedeuten die folgenden Ausdrücke dasselbe:

Y>=7 // no whitespace
Y >= 7 // with whitespace

Relationale Operatoren werden im Allgemeinen verwendet, um einfache Bedingungen auszudrücken. Um einfache Bedingungen zu komplexeren zu kombinieren, müssen Sie logische Operatoren verwenden. Logische Operatoren können mehrere Bedingungen testen, im Gegensatz zu relationalen Operatoren, die nur eine Bedingung testen.

Es ist auch wichtig zu beachten, dass die logischen Operatoren ( |, &, ^) bitweise Operatoren sein können, wenn sie ganzzahlige Operanden haben. Wenn sie als bitweise Operatoren verwendet werden, arbeiten sie mit den Bits ihrer Operanden.

Mit diesem Wissen über Operatoren sollten Sie sich jetzt darauf vorbereiten, Java-Klassen zu lernen.

Teilen Teilen Tweet Email Erfahren Sie, wie Sie Klassen in Java erstellen

Wenn Sie in Java programmieren lernen, müssen Sie wissen, wie man Klassen erstellt.

Weiter lesen
Verwandte Themen
  • Programmierung
  • Java
  • Codierungs-Tutorials
Über den Autor Jerome Davidson(22 Artikel veröffentlicht)

Jerome ist Staff Writer bei MakeUseOf. Er behandelt Artikel über Programmierung und Linux. Er ist auch ein Krypto-Enthusiast und behält die Krypto-Industrie immer im Auge.

Mehr von Jerome Davidson

Abonniere unseren Newsletter

Abonnieren Sie unseren Newsletter für technische Tipps, Rezensionen, kostenlose E-Books und exklusive Angebote!

Klicken Sie hier, um sich zu abonnieren