Öğe Ekleme ve Okuma
Coddy'nin Lua Journey'sinin Luau'ya Giriş bölümünün bir parçası. Ders 14 / 80.
Lua tablolarını table.insert ve table.remove ile zaten büyütüp küçültüyorsun: ikisi de tür denetimli dizilerde tamamen aynı şekilde çalışır. Fark şu: Luau artık eklediğin değerleri denetler: bir {number} dizisine dize eklemeye çalıştığında, kafası karışmış bir oyuncu tarafından çalışma zamanında fark edilmek yerine, sen yazarken uyarı verilir.
local queue: {string} = {"save", "load"}
table.insert(queue, "quit") -- sona ekler
table.insert(queue, 1, "help") -- geri kalanları kaydırarak 1. konuma ekler
local last = table.remove(queue) -- son öğeyi kaldırır VE döndürürtable.remove(t) son öğeyi çıkarıp sana geri verir; table.remove(t, 1) ilk öğeyi kaldırır ve geri kalan her şeyi bir sıra aşağı kaydırır. Dizi {string} türünde olduğundan Luau, döndürülen değerin bir dize olduğunu bilir.
Okuma da yalın Lua'daki kadar toleranslıdır: hiçbir değer içermeyen bir indeks, queue[0], queue[-1] veya #queue değerinin ötesindeki herhangi bir indeks, sessizce nil olarak değerlendirilir. Hata oluşmaz; bu yüzden var olduğundan emin olmadığın bir değeri kullanmadan önce nil olup olmadığını kontrol et.
Görev
KolayTürü belirtilmiş bir hareket listesini genişletip daralt.
local moves: {string} = {"jump", "run"}bildir.table.insertile"duck"ekle, ardından"crawl"öğesini 1. konuma ekle.table.remove(moves)sonucunulocal removediçine kaydet, ardındanremoved,#moves,moves[1]vemoves[10]değerlerini yazdır.
Run Code düğmesine bas: çıktı duck, 3, crawl ve nil değerlerini gösterir.
Kendin dene
-- 1) moves: {string} değişkenini "jump" ve "run" değerleriyle tanımla
-- 2) "duck" değerini sona ekle, "crawl" değerini 1 konumuna ekle
-- 3) son hareketi kaldır, ardından dört değeri yazdır
Luau'ya Giriş bölümündeki tüm dersler
1Luau ile Başlarken
Luau Nedir?Neden Luau Kullanılmalı?İlk Luau KodunuzTip Denetimi ve Hata ModlarıÖzet: Luau'ya Giriş4Fonksiyonlarla Çalışma
Parametreleri ve Dönüş Değerlerini Tür BelirtmeAnonim Fonksiyonları Tür BelirtmeDeğer Döndürmeyen Fonksiyonlarİsteğe Bağlı ParametrelerVarsayılan Parametre DeğerleriBoolean Değerler için VarsayılanlarDeğişken Sayıda Parametre Alan FonksiyonlarFonksiyon Türlerini TanımlamaTekrar: Tür Belirtilmiş Fonksiyonlar2Temel Türler
Number, String ve Boolean'any' Türü: Kaçış Yolu'unknown' TürüNil ve İsteğe Bağlı TürlerTür Çıkarımı UygulamadaAçık Tür Ek AçıklamalarıTekrar: Temel Türler Alıştırması5Diğer Adlar (Aliases), Birleşimler, Kesişimler
İlkel Tipler için Tip Diğer Adları (Type Aliases)Birleşim Tipleri (Union Types)Birleşim Tipleri ile ÇalışmakLiteral (Sabit) TiplerKesişim Tipleri (Intersection Types)Tip Diğer Adlarını BirleştirmeÖzet: Gelişmiş Tip Kombinasyonları3Türlenmiş Tablolar: Diziler ve Map’ler
Türlenmiş DizilerÖğe Ekleme ve OkumaMap Türü Nedir?Map’leri Tanımlama ve ErişmeTablolar Üzerinde YinelemeKarma Şekilli TablolarBir Izgarayı OkumaBir Izgara Oluşturmatable.unpackÖzet: Diziler ve Map’lerKendi başına pratik yap: Online Luau derleyicisi