array Bertipe
Termasuk bagian Pengantar Luau dalam perjalanan Lua di Coddy. Pelajaran 13 dari 73.
Array bertipe adalah salah satu fitur Luau yang paling berguna untuk mengatur banyak nilai sekaligus dengan tetap menjaga keamanan tipe.
Di Lua, array hanyalah tabel dengan nilai pada posisi 1, 2, 3, …, dan tabel itu bisa memuat angka, string, dan boolean sekaligus. Luau memungkinkan kamu menyatakan bahwa sebuah tabel hanya boleh berisi elemen dari satu tipe, menggunakan sintaks {Type}:
local numbers: {number} = {1, 2, 3, 4, 5}
local names: {string} = {"Alice", "Bob", "Charlie"}
local flags: {boolean} = {true, false, true}Saat kamu mendeklarasikan array bertipe, pemeriksa tipe Luau memastikan bahwa hanya nilai dengan tipe yang dideklarasikan yang dapat dimasukkan. Masukkan string ke dalam array {number}, dan kamu akan mendapatkan error tipe saat mengedit, sebelum kodemu dijalankan:
local scores: {number} = {85, 90, 78}
table.insert(scores, "oops") -- ✗ error tipe: string bukan angkaSemua yang sudah kamu ketahui tentang tabel Lua tetap berlaku: array dimulai dari indeks 1 (scores[1] adalah elemen pertama), #scores adalah panjangnya, dan table.insert / table.remove berfungsi seperti biasa. Anotasi ini menambahkan keamanan, bukan perilaku baru saat program dijalankan.
Tantangan
MudahBuat array bertipe bernama scores yang hanya dapat menampung angka, dengan nilai awal 85, 92 dan 78.
Buat array bertipe kedua bernama studentNames yang hanya dapat menampung string, dengan nilai awal "Alice", "Bob" dan "Charlie".
Lalu cetak, masing-masing pada baris tersendiri:
- skor pertama
- jumlah skor (gunakan
#) - nama siswa kedua
Coba sendiri
-- Tulis kodemu di sini
-- 1) deklarasikan scores: {number} dan studentNames: {string}
-- 2) tampilkan skor pertama, jumlah skor dalam scores, dan nama kedua
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Pengantar Luau
1Memulai dengan Luau
Apa Itu Luau?Mengapa Menggunakan Luau?Kode Luau PertamamuPemeriksaan Tipe dan Mode ErrorRangkuman: Pengenalan Luau4Bekerja dengan Fungsi
Menentukan Tipe Parameter dan Nilai KembalianMenentukan Tipe Fungsi AnonimFungsi yang Tidak Mengembalikan NilaiParameter OpsionalNilai Default ParameterFungsi VariadikMendefinisikan Tipe FungsiRangkuman: Fungsi Bertipe2Tipe Inti
Tipe Dasar: num, str, boolTipe 'any': Jalan Keluar DaruratTipe 'unknown'Nil & Tipe OpsionalInferensi Tipe dalam PraktikAnotasi Tipe EksplisitUlasan: Latihan Tipe Inti5Alias, Union, dan Intersection
Alias Tipe untuk Tipe PrimitifTipe UnionMenggunakan Tipe UnionTipe LiteralTipe IntersectionMenggabungkan Alias TipeRekap: Kombinasi Tipe Lanjutan3Tabel Bertipe: array dan Map
array BertipeMenambahkan dan Membaca ElemenApa Itu Tipe Map?Mendeklarasikan dan Mengakses MapMelakukan Iterasi pada TabelTabel dengan Bentuk Campuranarray Bertipe Multidimensitable.unpack dan VarargsRingkasan: array dan MapLatihan sendiri: Compiler Luau online