Truthy- und Falsy-Werte
Teil des Abschnitts Grundlagen der Lua-Journey von Coddy. Lektion 24 von 90.
Bei der Verwendung logischer Operatoren wie and, or und not muss Lua bestimmen, was in logischen Kontexten als „wahr“ oder „falsch“ gilt. Dieses Konzept wird als truthy- und falsy-Werte bezeichnet, und Lua behandelt es anders als viele andere Programmiersprachen.
In Lua gelten nur zwei Werte als falsy (werden bei logischen Operationen wie false behandelt):
print(false and "This won't print") -- false ist falsy
print(nil and "This won't print") -- nil ist falsyBeachte, dass and und or einen ihrer Operanden zurückgeben und nicht nur true oder false: a and b ergibt a, wenn a falsy ist, andernfalls b; a or b ergibt a, wenn a truthy ist, andernfalls b. Daher geben die beiden obigen Zeilen false und nil aus, und jede der folgenden Zeilen gibt ihren Text aus.
Alles andere in Lua gilt als wahrheitswertig (wird bei logischen Operationen als true behandelt). Dazu gehören Werte, die dich vielleicht überraschen, wenn du andere Sprachen gewohnt bist:
print(0 and "This will print") -- 0 gilt in Lua als wahr!
print("" and "This will print") -- Eine leere Zeichenkette gilt als wahr!
print({} and "This will print") -- Eine leere Tabelle gilt als wahr!Probier 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