Logische Operatoren Teil 4
Teil des Abschnitts Grundlagen der Java-Journey von Coddy. Lektion 26 von 73.
Das de Morgansche Gesetz ist eine Regel, die uns hilft, Ausdrücke mit NOT darin zu vereinfachen. Bei der Arbeit mit logischen Ausdrücken müssen wir sie manchmal vereinfachen oder umstellen.
Wenn vor zwei mit and verbundenen Bedingungen not steht, kannst du es in zwei separate Teile aufteilen. Das and wird zu or, und jeder Teil erhält sein eigenes not:
!(A && B) ist dasselbe wie (!A) || (!B)
Zum Beispiel:
// Lass uns prüfen, ob eine Zahl NICHT (zwischen 1 und 10) liegt
int number = 15;
// Diese beiden Ausdrücke sind äquivalent:
boolean result1 = !(number >= 1 && number <= 10);
boolean result2 = !(number >= 1) || !(number <= 10);
System.out.println(result1); // true
System.out.println(result2); // trueDas Gegenteil ist ebenfalls richtig: !(A || B) ist dasselbe wie (!A) && (!B)
Zum Beispiel:
// Prüfen, ob eine Person NICHT (ein Student oder angestellt) ist
boolean isStudent = false;
boolean isEmployed = false;
// Diese beiden Ausdrücke sind äquivalent:
boolean result1 = !(isStudent || isEmployed);
boolean result2 = !(isStudent) && !(isEmployed);
System.out.println(result1); // true
System.out.println(result2); // trueAufgabe
AnfängerDu hilfst einer Tierhandlung dabei, ein System zu erstellen, das feststellt, ob sie ein Haustier an einen Kunden verkaufen kann.
Initialisiere die folgenden Variablen:
hasLicensemit dem WerttruehasSpacemit dem WertfalsehasExperiencemit dem Werttrue
Schreibe die folgenden logischen Ausdrücke, um festzustellen, ob:
canSellRegularPet: Der Kunde benötigt ENTWEDER eine Lizenz ODER Erfahrung UND muss Platz habencanSellExoticPet: Der Kunde benötigt SOWOHL eine Lizenz ALS AUCH Erfahrung UND muss Platz habencannotSellAnyPet: Der Kunde hat KEINE Lizenz UND KEINE Erfahrung ODER hat KEINEN Platzresult:canSellRegularPetODERcanSellExoticPetODERcannotSellAnyPet
Tipp: Schreibe die Bedingung, die die Anforderung beschreibt, nicht den Wert, den die Variable zufällig enthält. "Must have space" → hasSpace; "has NO space" → !hasSpace. Verwende ! nur, wenn die Anforderung das Gegenteil von dem ist, was der Variablenname aussagt, zum Beispiel "has NO license" → !hasLicense.
Probier es selbst
public class Main {
public static void main(String[] args) {
// Variablen initialisieren
// Bedingungen berechnen
boolean canSellRegularPet =
boolean canSellExoticPet =
boolean cannotSellAnyPet =
boolean result =
// Die folgenden Zeilen nicht löschen
System.out.println("Can sell regular pet: " + canSellRegularPet);
System.out.println("Can sell exotic pet: " + canSellExoticPet);
System.out.println("Cannot sell any pet: " + cannotSellAnyPet);
System.out.println("Result: " + result);
}
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorInkrement/DekrementPost-Inkrement/DekrementArithmetische KurzformenVergleichsoperatorenString-Vergleich7Grundlegende Ein-/Ausgabe
System.out-MethodenAusgabe formatierenScanner-KlasseWiederholung – Bis 120Wiederholung – Wahr oder falsch5Operatoren Teil 2
Logische Operatoren Teil 1Logische Operatoren Teil 2Wiederholung – Einfache LogikLogische Operatoren Teil 3Logische Operatoren Teil 43Variablen Teil 2
KonstantenNamenskonventionenRückblick – Variablen initialisierenTypumwandlung Teil 1Typumwandlung Teil 26Entscheidungen treffen
If-AnweisungIf - ElseSwitch-AnweisungTernärer OperatorRückblick - If ElseVerschachteltes If - ElseÜbe selbstständig: Online-Java-Compiler