İndeks ile Elemanlara Erişme
Coddy'nin Lua Journey'sinin Fundamentals bölümünün bir parçası — ders 58 / 90.
Liste stilindeki bir tabloda belirli bir öğeye erişmek için, istediğiniz öğenin konum numarasıyla birlikte köşeli parantez kullanırsınız.
İşte temel sözdizimi:
local items = {"sword", "shield", "potion"}
print(items[1]) -- çıktı: sword
print(items[2]) -- çıktı: shieldLua hakkında hatırlanması gereken çok önemli bir şey var: tablo indeksleri 0'dan değil, 1'den başlar. Bu, ilk öğenin 0. konumda olduğu diğer birçok programlama dilinden farklıdır. Lua'da ilk öğe her zaman 1. indekste, ikincisi 2. indekste yer alır ve bu şekilde devam eder.
local scores = {100, 85, 92}
print(scores[1]) -- ilk puan: 100
print(scores[3]) -- üçüncü puan: 92Bu indeksleme sistemi, konumlar hakkında düşünürken Lua tablolarının daha doğal hissettirmesini sağlar; ilk öğe, tıpkı günlük hayatta saydığınız gibi 1. konumdadır.
Görev
KolayTablo öğesi erişimini gösteren bir hazine sandığı envanter sistemi oluşturun. İlk olarak, tam olarak dört dize değeri içeren treasureChest adında bir tablo oluşturun: "gold coin", "ruby gem", "magic scroll" ve "silver key". Tabloyu oluşturduktan sonra, hazine sandığındaki üçüncü öğeye erişmek ve bunu yazdırmak için köşeli parantez notasyonunu kullanın.
Kopya kağıdı
Bir tablodaki belirli bir öğeye erişmek için, konum numarasıyla birlikte köşeli parantez kullanın:
local items = {"sword", "shield", "potion"}
print(items[1]) -- çıktı: sword
print(items[2]) -- çıktı: shieldÖnemli: Lua tablo indeksleri 0'dan değil, 1'den başlar. İlk öğe 1. indekste, ikinci öğe 2. indekste yer alır ve bu şekilde devam eder.
local scores = {100, 85, 92}
print(scores[1]) -- ilk skor: 100
print(scores[3]) -- üçüncü skor: 92Kendin dene
-- TODO: Dört öğe içeren treasureChest tablosunu oluşturun
-- TODO: Hazine sandığından üçüncü öğeye erişin ve yazdırınBu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Fundamentals 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ı