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" ya da "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 mantıksal işlemlerde false olarak ele alınır (yani yanlış değerli kabul edilir):
print(false and "skipped") -- false yazdırır: false, yanlış kabul edilir
print(nil and "skipped") -- nil yazdırır: nil, yanlış kabul edilirand ve or işleçlerinin yalnızca true ya da false değerini değil, işlenenlerinden birini döndürdüğünü unutma: a and b, a yanlış değerliyse a değerini, değilse b değerini verir; a or b, a doğru değerliyse a değerini, değilse b değerini verir. Bu yüzden 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ş string 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