Türlenmiş Diziler
Coddy'nin Lua Journey'sinin Luau'ya Giriş bölümünün bir parçası. Ders 13 / 80.
Türlü diziler, tür güvenliğini korurken birden çok değeri düzenlemek için Luau'nun en kullanışlı özelliklerinden biridir.
Lua'da dizi, 1, 2, 3, … konumlarında değerler bulunan bir tablodan ibarettir ve aynı anda bir sayıyı, bir dizgeyi ve bir boole değerini rahatlıkla tutabilir. Luau, {Type} söz dizimini kullanarak bir tablonun yalnızca tek bir türde öğeler içermesi gerektiğini belirtmenizi sağlar:
local numbers: {number} = {1, 2, 3, 4, 5}
local names: {string} = {"Alice", "Bob", "Charlie"}
local flags: {boolean} = {true, false, true}Türlü bir dizi tanımladığınızda Luau'nun tür denetleyicisi, yalnızca belirtilen türdeki değerlerin diziye eklenmesini sağlar. Bir {number} dizisine bir dizge ekleyin; kod hiç çalıştırılmadan, düzenleme sırasında tür hatası alırsınız:
local scores: {number} = {85, 90, 78}
table.insert(scores, "oops") -- ✗ tür hatası: string bir sayı değildirLua tabloları hakkında zaten bildiğiniz her şey geçerliliğini korur: diziler 1 tabanlıdır (scores[1] ilk öğedir), #scores uzunluğu verir ve table.insert / table.remove her zamanki gibi çalışır. Tür açıklaması yeni bir çalışma zamanı davranışı eklemez, yalnızca güvenlik sağlar.
Görev
KolayPuanları ve adları türlendirilmiş dizilerde sakla.
local scores: {number} = {85, 92, 78}bildirimini yap.local studentNames: {string} = {"Alice", "Bob", "Charlie"}bildirimini yap.scores[1],#scoresvestudentNames[2]değerlerini her satıra bir tane gelecek şekilde yazdır.
Kodu Çalıştır düğmesine bas: çıktı olarak 85, 3 ve Bob görünür.
Kendin dene
-- 1) scores: {number} ve studentNames: {string} değişkenlerini tanımla
-- 2) ilk puanı, puanların sayısını ve ikinci adı 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