Truthy ve Falsy Değerler
Coddy'nin Lua Journey'sinin Temeller bölümünün bir parçası. Ders 24 / 90.
and, or ve not gibi mantıksal operatörleri kullanırken Lua'nın, mantıksal bağlamlarda neyin "true" veya "false" sayıldığını belirlemesi gerekir. Bu kavrama truthy ve falsy değerler denir ve Lua bunu diğer birçok programlama dilinden farklı şekilde ele alır.
Lua'da yalnızca iki değer false kabul edilir (mantıksal işlemlerde false olarak değerlendirilir):
print(false and "This won't print") -- false, yanlış değer olarak değerlendirilir
print(nil and "This won't print") -- nil, yanlış değer olarak değerlendirilirand ve or işleçlerinin yalnızca true veya false değil, işlenenlerinden birini döndürdüğünü unutmayın: a and b, a false kabul ediliyorsa a'yı, aksi takdirde b'yi verir; a or b, a true kabul ediliyorsa a'yı, aksi takdirde b'yi verir. Bu nedenle yukarıdaki iki satır false ve nil değerlerini yazdırır; aşağıdaki satırların her biri ise kendi metnini yazdırır.
Lua'daki diğer her şey doğru kabul edilir (mantıksal işlemlerde true olarak değerlendirilir). Buna, başka dillerden geliyorsanız sizi şaşırtabilecek değerler de dahildir:
print(0 and "This will print") -- 0, Lua'da doğru kabul edilir!
print("" and "This will print") -- Boş dizge doğru kabul edilir!
print({} and "This will print") -- Boş tablo doğru kabul edilir!Kendin dene
Bu ders bir kod alıştırması içermiyor.
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temeller bölümündeki tüm dersler
4Operatörler 2 İlişkisel ve Mantıksal
Eşitlik Operatörleriİlişkisel Operatörler'and' Operatörü'or' Operatörü'not' OperatörüKısa Devre DeğerlendirmesiTruthy ve Falsy DeğerlerÖzet - Basit Mantık10Tablolar Bölüm 1: Liste Stili
Tablo Nedir?Tablo Oluşturmaİndeks ile Elemanlara Erişmeİndeks ile Elemanları DeğiştirmeUzunluk Operatörü '#'table.insert()table.remove()Özet - Parti Üyelerini Yönetme13Proje: Basit İksir Dükkanı
Proje Kurulumuİksir Ekleme2Değişkenler ve Veri Tipleri
Değişken Nedir?SayılarStringlerBooleanlar'nil' Değeritype() Fonksiyonuİsimlendirme KurallarıÖzet - Karakter Profili5Temel Çıktı
Sabitleri YazdırmaDeğişkenleri YazdırmaBirden Fazla Değer YazdırmaMetinleri ve Değişkenleri Birleştirmetostring() FonksiyonuGirdiTip DönüşümüÖzet - Durum RaporuÖzet - 120'ye Kadar8String Manipülasyonu Temelleri
string.len()string.upper & string.lowerstring.sub()string.rep()string.find()Özet - Kullanıcı Adı Biçimlendirme3Operatörler 1 Aritmetik ve Birleştirme
Aritmetik OperatörlerMod Alma OperatörüÜs Alma OperatörüString BirleştirmeOperatör ÖnceliğiÖzet - Basit Hesaplamalar6Proje: Karakter İstatistiklerini Görüntüleme
Hoş Geldiniz MesajıKarakter İstatistiklerini Tanımlama9Fonksiyon Temelleri
Fonksiyon TanımlamaFonksiyon ÇağırmaParametreli FonksiyonlarÇoklu Parametreli Fonksiyonlar'return' İfadesiÖzet - Alan HesaplayıcıKendi başına pratik yap: Online Lua derleyicisi