Kurzschlussauswertung
Teil des Abschnitts Grundlagen der Lua-Journey von Coddy. Lektion 23 von 90.
Wenn Lua die Operatoren and und or auswertet, verwendet es eine clevere Optimierung namens Auswertung mit Kurzschluss. Das bedeutet, dass Lua die Auswertung beendet, sobald das endgültige Ergebnis feststeht, und dabei möglicherweise Teile des Ausdrucks vollständig überspringt.
Beim and-Operator weiß Lua sofort, dass der gesamte Ausdruck false sein wird, wenn die erste Bedingung false ist, ohne die zweite Bedingung zu überprüfen:
playerAlive = false
hasWeapon = true
canFight = playerAlive and hasWeapon
-- Lua prüft nur playerAlive (false) und wertet hasWeapon nie ausÄhnlich gilt für den or-Operator: Wenn die erste Bedingung true ist, weiß Lua, dass das Ergebnis true sein wird, und überspringt die zweite Bedingung:
hasKey = true
hasPassword = false
canEnter = hasKey or hasPassword
-- Lua prüft nur hasKey (true) und wertet hasPassword nie ausProbier es selbst
Diese Lektion enthält keine Programmieraufgabe.
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Operatoren 2: Vergleichs- und logische Operatoren
GleichheitsoperatorenVergleichsoperatorenDer 'and'-OperatorDer 'or'-OperatorDer 'not'-OperatorKurzschlussauswertungTruthy- und Falsy-WerteRückblick – Einfache Logik7Grundlegende bedingte Logik
Die if-then-AnweisungDie if-then-else-AnweisungDie elseif-AnweisungWiederholung – Schatztruhe2Variablen und Datentypen
Was ist eine Variable?ZahlenZeichenkettenBoolesche WerteDer Wert „nil“Die Funktion type()NamenskonventionenRückblick – Charakterprofil5Grundlegende Ausgabe
Literale ausgebenVariablen ausgebenMehrere Werte ausgebenStrings & Variablen kombinierenDie tostring()-FunktionEingabeTypumwandlungRückblick – StatusberichtRückblick – Bis 1208Grundlagen der String-Manipulation
string.len()string.upper & string.lowerstring.sub()string.rep()string.find()Rückblick – Benutzernamen formatieren3Operatoren 1: Arithmetik & Verkettung
Arithmetische OperatorenModulo-OperatorPotenzierungsoperatorVerkettung von ZeichenkettenRangfolge der OperatorenWiederholung – Einfache Berechnungen6Projekt: Charakterwerte anzeigen
WillkommensnachrichtCharakterwerte deklarieren9Grundlagen von Funktionen
Eine Funktion deklarierenEine Funktion aufrufenFunktionen mit ParameternFunktionen mit mehreren ParameternDie Anweisung „return“Zusammenfassung – Flächenrechner12Grundlagen der Schleifen
Die while-SchleifeDie repeat-until-SchleifeDie numerische for-Schleifefor-Schleife mit SchrittweiteDie Anweisung „break“Rückblick – Countdown15Abschließende Herausforderungen
Wiederholung – SpielzugWiederholung – Einfache DatenbankWiederholung – Summe gerader ZahlenÜbe selbstständig: Online-Lua-Compiler