0Pricing
Lua Academy · Pelajaran

Fungsi Pustaka table

Terapkan table.insert, remove, sort, concat, move, dan unpack.

Fungsi Pustaka table adalah pelajaran Lua Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Lua Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Lua Academy mencakup 4 pelajaran total.

Modul table

Modul table menyediakan fungsi untuk memanipulasi tabel Lua yang digunakan sebagai larik: insert, remove, sort, concat, move, dan unpack.

table.insert

table.insert(t, val) menambahkan elemen ke akhir. table.insert(t, pos, val) menyisipkan elemen pada posisi tertentu dan menggeser elemen setelahnya ke kanan.

local t = {"a", "b", "d"}
table.insert(t, "e")       -- append
table.insert(t, 3, "c")   -- insert at index 3
print(table.concat(t, ","))  -- a,b,c,d,e

table.remove

table.remove(t) menghapus dan mengembalikan elemen terakhir. table.remove(t, pos) menghapus elemen pada posisi tertentu dan menggeser elemen ke kiri.

local t = {"x", "y", "z"}
print(table.remove(t))     -- z
print(table.remove(t, 1))  -- x
print(table.concat(t))     -- y

table.sort

table.sort(t, cmp) mengurutkan langsung di tempat. Tanpa cmp, fungsi ini menggunakan <. Pembanding harus menerapkan pengurutan lemah ketat.

local t = {3, 1, 4, 1, 5, 9, 2, 6}
table.sort(t)
print(table.concat(t, " "))  -- 1 1 2 3 4 5 6 9

table.concat

table.concat(t, sep, i, j) menggabungkan elemen larik menjadi string. Elemen harus berupa string atau bilangan.

local words = {"Hello", "world", "from", "Lua"}
print(table.concat(words, " "))  -- Hello world from Lua

table.move

table.move(a1, f, e, t, a2) menyalin elemen dari a1[f..e] ke a2 mulai dari t. Jika a2 dihilangkan, elemen disalin di dalam a1.

local src = {1,2,3,4,5}
local dst = table.move(src, 2, 4, 1, {})
print(table.concat(dst, ","))  -- 2,3,4

table.unpack

table.unpack(t, i, j) mengembalikan elemen t[i] hingga t[j] sebagai nilai-nilai terpisah. Nilai bawaan: 1 hingga #t.

local t = {10, 20, 30}
print(table.unpack(t))         -- 10  20  30
local a, b = table.unpack(t, 1, 2)
print(a, b)                    -- 10  20

table.pack

table.pack(...) mengemas argumen variadik ke dalam tabel dengan bidang n yang menyimpan jumlah total, termasuk nil.

local function allArgs(...)
  local t = table.pack(...)
  print("count:", t.n)
  return t
end
allArgs(1, nil, 3)  -- count: 3

Mensimulasikan Antrean dengan insert/remove

Gunakan table.insert untuk memasukkan elemen ke akhir antrean dan table.remove(t, 1) untuk mengeluarkan elemen dari depan (perhatikan: biayanya O(n)).

Mensimulasikan Tumpukan

Gunakan table.insert untuk menambahkan ke tumpukan dan table.remove (tanpa posisi) untuk mengambil dari tumpukan—keduanya merupakan operasi O(1).

table.move untuk Menggeser

Geser semua elemen ke kiri sebanyak satu posisi menggunakan table.move(t, 2, #t, 1), lalu ubah elemen terakhir menjadi nil.

local t = {1,2,3,4,5}
table.move(t, 2, #t, 1)
t[#t] = nil
print(table.concat(t, ","))  -- 2,3,4,5

Pertanyaan tentang Pustaka table

Apa yang dikembalikan oleh table.pack(1, nil, 3)?

Rangkuman: Pustaka table

Pustaka table menyediakan insert, remove, sort, concat, move, unpack, dan pack. Secara bersama-sama, fungsi-fungsi tersebut menangani semua kebutuhan umum manipulasi larik secara efisien.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Fungsi Pustaka table” gratis?

Ya — teks lengkap “Fungsi Pustaka table” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Lua Academy, upgrade ke CoddyKit PRO. Kursus Lua Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Fungsi Pustaka table”?

Terapkan table.insert, remove, sort, concat, move, dan unpack. Kamu berlatih Lua Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Lua Academy?

Tidak diperlukan pengalaman sebelumnya. Lua Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.

Berapa lama pelajaran “Fungsi Pustaka table” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Lua Academy ini?

Ya. Setiap pelajaran Lua Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Fungsi Pustaka math
  2. Fungsi Pustaka table
  3. Pustaka os dan io
  4. Pustaka debug
← Kembali ke Lua Academy