ipairs() ile Yineleme
Coddy'nin Lua Journey'sinin Mantık ve Akış bölümünün bir parçası. Ders 2 / 54.
pairs() herhangi bir tablo yapısıyla çalışırken Lua, özellikle liste tarzı tablolar için tasarlanmış ipairs() adlı özel bir işlev sağlar. Bu işlev, tablolarda sıralı bir şekilde dolaşır; 1 indeksinden başlar ve nil değerine rastlayana kadar devam eder.
ipairs() söz dizimi pairs() söz dizimine benzer:
for index, value in ipairs(myList) do
-- index ve value değerlerini burada kullan
endİşte görev eşyalarından oluşan bir liste örneği:
local questItems = {"Map", "Compass", "Torch", "Rope"}
for i, item in ipairs(questItems) do
print(i .. ". " .. item)
endÇıktı:
1. Map
2. Compass
3. Torch
4. Ropepairs() ile arasındaki temel fark, ipairs() bir nil değeri bulduğunda, ardından başka öğeler olsa bile hemen durmasıdır.
Görev
KolayKonum numaralarıyla birlikte tüm görevleri listeleyen biçimlendirilmiş bir dize döndüren listTasks adlı bir işlev yazın. Bu işlev, tasks tablosunu parametre olarak alır.
Görevleri sıralı biçimde dolaşmak ve her satırda görev numarasının ardından görev adının yer aldığı bir dize oluşturmak için ipairs() kullanın. Biçim şu şekilde olmalıdır: number. task. Her görev ayrı bir satırda yer almalıdır.
Parametreler:
tasks(table): Görev adlarını dize olarak içeren liste türünde bir tablo
Döndürür: Her görevin ayrı bir satırda numaralandırıldığı bir dize. Biçim:
1. task1
2. task2
3. task3Kendin dene
function listTasks(tasks)
-- Kodu buraya yazın
end
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Mantık ve Akış bölümündeki tüm dersler
1İleri Düzey Tablo Yineleme
pairs() ile Yinelemeipairs() ile Yinelemepairs() vs. ipairs()Özet - Karakter Sayfası2Daha Fazla Tablo Kütüphanesi Fonksiyonu
table.concat()Tablo Oluşturma ve unpack()table.sort()Fonksiyonlar ile Özel SıralamaÖzet - Yüksek Skor TablosuKendi başına pratik yap: Online Lua derleyicisi