Menu
CoddyTech

Wartości prawdziwe i fałszywe

Część sekcji Podstawy ścieżki Lua w Coddy. Lekcja 24 z 90.

Podczas używania operatorów logicznych, takich jak and, or i not, Lua musi określić, co uznaje się za „prawdę” lub „fałsz” w kontekście logicznym. Ta koncepcja nazywa się wartościami prawdziwymi i fałszywymi, a Lua obsługuje ją inaczej niż wiele innych języków programowania.

W Lua tylko dwie wartości są uznawane za fałszywe (traktowane jako false w operacjach logicznych):

print(false and "skipped")  -- wypisuje false: false jest wartością fałszywą
print(nil and "skipped")    -- wypisuje nil: nil jest wartością fałszywą

Zauważ, że and i or zwracają jeden ze swoich operandów, a nie tylko true lub false: a and b zwraca a, gdy a jest fałszywe, a w przeciwnym razie b; a or b zwraca a, gdy a jest prawdziwe, a w przeciwnym razie b. Dlatego dwa powyższe wiersze wypisują false i nil, a każdy z poniższych wierszy wypisuje swój tekst.

Wszystko inne w Lua jest uznawane za wartość prawdziwą (traktowane jako true w operacjach logicznych). Dotyczy to także wartości, które mogą cię zaskoczyć, jeśli znasz inne języki:

print(0 and "This will print")      -- 0 jest wartością prawdziwą w Lua!
print("" and "This will print")     -- Pusty ciąg znaków jest wartością prawdziwą!
print({} and "This will print")     -- Pusta tabela jest wartością prawdziwą!

Spróbuj swoich sił

Ta lekcja nie zawiera wyzwania z kodem.

quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Kompilator Lua online