table

Tampilkan yang Tidak Digunakan Lagi

*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.

Perpustakaan ini menyediakan fungsi generik untuk manipulasi tabel/ array, menyediakan semua fungsinya di variabel global table . Kebanyakan fungsi di perpustakaan table menganggap bahwa tabel mewakili matriks atau daftar. Untuk fungsi ini, "Panjang" tabel berarti hasil dari operasi panjang.

Rangkuman

Fungsi

  • clear(table : table):()

    Tetapkan semua kunci dalam tabel yang diberikan menjadi nol.

  • Mengembalikan salinan permukaan tabel yang disediakan.

  • concat(t : Array,sep : string,i : number,j : number):string

    Mengembalikan rentang elemen tabel yang diberikan sebagai string di mana setiap elemen dibedakan oleh pemisah yang diberikan.

  • create(count : number,value : Variant):table

    Mengembalikan tabel baru yang dipenuhi dengan banyak instans dari nilai yang ditentukan.

  • find(haystack : table,needle : Variant,init : number):Variant

    Mengembalikan indeks dari peristiwa pertama dari needle dalam haystack dimulai dari init .

  • Membuat tabel yang diberikan hanya dibaca.

  • insert(t : Array,pos : number,value : Variant):()

    Menghasilkan nilai yang diberikan ke posisi target dari array.

  • insert(t : Array,value : Variant):()

    Menambahkan nilai yang diberikan ke akhir daftar.

  • Mengembalikan true jika tabel yang diberikan beku dan false jika tidak beku.

  • Mengembalikan kunci numerik maksimum tabel yang disediakan, atau nol jika tabel tidak memiliki kunci numerik.

  • move(src : table,a : number,b : number,t : number,dst : table):table

    Mengkopi rentang elemen yang ditentukan dari satu tabel ke tabel lain.

  • pack(values... : Variant):Variant

    Mengembalikan tabel baru yang berisi nilai yang disediakan.

  • remove(t : Array,pos : number):Variant

    Menghapus elemen yang ditentukan dari array, menggeser elemen yang lebih tua ke bawah untuk mengisi ruang kosong jika mungkin.

  • sort(t : Array,comp : function):()

    Mengurutkan elemen tabel menggunakan fungsi perbandingan yang disediakan atau operator <.

  • unpack(list : table,i : number,j : number):Tuple

    Mengembalikan semua elemen dari daftar yang diberikan sebagai tuple.

Fungsi

clear

()

Tetapkan nilai untuk semua kunci dalam tabel yang diberikan menjadi nol. Ini menyebabkan operator # untuk mengembalikan 0 untuk tabel yang diberikan. Kapasitas yang diberikan dari bagian array tabel dipertahankan, yang memungkinkan penggunaan efisien dari ruang.


local grades = {95, 82, 71, 92, 100, 60}
print(grades[4], #grades) --> 92, 6
table.clear(grades)
print(grades[4], #grades) --> nol, 0
-- Jika skor diisi lagi dengan jumlah entri yang sama,
-- tidak ada resizing matriks potensial yang akan terjadi
-- because the capacity was maintained by table.clear.

Fungsi ini tidak menghapus/menghancurkan tabel yang diberikan kepada itu. Fungsi ini dimaksudkan untuk digunakan secara khusus untuk tabel yang akan di-re-used.

Parameter

table: table

Tabel cuaca yang akan dibersihkan kunci.

Memberikan nilai

()

clone

Mengembalikan salinan ringan yang tidak dimbekukan dari tabel yang disediakan.

Parameter

Tabel yang akan diklon.

Memberikan nilai

Klon tabel yang disediakan.

concat

Diberikan array di mana semua elemen adalah string atau angka, mengembalikan string t[i] ... sep ... t[i+1] ... sep ... t[j] .Nilai default untuk sep adalah string kosong, nilai default untuk i adalah 1, dan nilai default untuk j adalah #t. Jika i lebih

Parameter

Tabel yang akan dikonversi menjadi string.

sep: string

String yang akan dikatakan antara setiap entri dalam tabel.

Indeks awal tabel kontrasenasi.

Nilai Default: 1

Indeks akhir dari konsolidasi tabel.

Memberikan nilai

create

Menciptakan tabel dengan bagian array yang diberikan number dari elemen, opsiional dengan value yang diberikan.


local t = table.create(3, "Roblox")
print(table.concat(t)) --> RobloxRobloxRoblox

Jika Anda menyisipkan ke dalam tabel besar seperti table dan yakin batas atas yang masuk akal untuk jumlah elemen, disarankan untuk menggunakan fungsi ini untuk menginisialisasi tabel. Ini menjamin bagian array tabelnya dari memori yang cukup besar, karena resizingnya dapat mahal. Untuk jumlah kecil ini biasanya tidak terlihat.

Parameter

count: number
value: Variant

Memberikan nilai

find

Variant

Dalam tabel lainnya yang diberikan haystack, temukan occurrence pertama dari value needle, dimulai dari index init atau awal jika tidak diberikan. Jika value tidak ditemukan, 2>nil2> dikembalikan.

Sebuah 算法 pencarian linier dilakukan.


local t = {"a", "b", "c", "d", "e"}
print(table.find(t, "d")) --> 4
print(table.find(t, "z")) --> nol, karena z tidak ada di tabel
print(table.find(t, "b", 3)) --> nil, because b appears before index 3

Parameter

haystack: table
needle: Variant
init: number

Memberikan nilai

Variant

freeze

Fungsi ini membuat tabel yang diberikan hanya dibaca, secara efektif "membekukannya" dalam kondisi saat ini. Mencoba untuk mengubah tabel yang diberikan menghasilkan kesalahan.

Efek membeku ini rendah, yang berarti Anda dapat menulis ke tabel dalam tabel beku. Untuk membeku tabel dalam kedalaman, panggil fungsi ini secara berulang di semua tabel turun.

Parameter

Tabel untuk dijadikan beku.

Memberikan nilai

Tabel yang dibekukan.

insert

()

Menghasilkan nilai yang diberikan ke posisi target dari array.

Parameter

Tabel yang ditambahkan.

pos: number

Posisi di mana nilai akan ditambahkan.

value: Variant

Nilai yang akan ditambahkan ke tabel.

Memberikan nilai

()

insert

()

Menambahkan nilai yang diberikan ke akhir daftar.

Parameter

Tabel yang ditambahkan.

value: Variant

Nilai yang akan ditambahkan ke tabel.

Memberikan nilai

()

isfrozen

Fungsi ini mengembalikan true jika tabel yang diberikan dijadikan beku dan false jika tidak dijadikan beku. Anda dapat membekukan tabel dengan menggunakan table.freeze().

Parameter

Tabel untuk periksa.

Memberikan nilai

Apakah tabel diubah dari table.freeze() .

maxn

Mengembalikan kunci numerik maksimum tabel yang disediakan, atau nol jika tabel tidak memiliki kunci numerik. Ketuk dalam tabel diabaikan.

Parameter

Memberikan nilai

move

Mengkopi elemen di tabel src dari src[a] hingga src[b] ke tabel 1> dst1> mulai dari indeks 4> t4> . Setara dengan pernyataan pengassignan 7> dst[t], ..., ds

Standar untuk dst adalah src . Angkasa tujuan mungkin bertumpang-tindih dengan angkasa sumber.

Mengembalikan dst untuk kenyamanan.

Parameter

src: table

Tabel sumber.

Mulai menyalin pada src[a].

Salinan hingga dan termasuk src[b] .

Salinan ke dst[t], ... .

dst: table

Tabel tujuan.

Nilai Default: src

Memberikan nilai

dst , untuk kenyamanan.

pack

Variant

Mengembalikan tabel baru dengan semua argument yang disimpan ke kunci 1, 2, dll dan dengan field "n" dengan total number argument. Catat bahwa tabel yang dihasilkan mungkin bukan urutan.


local t = table.pack(1, 2, 3)
print(table.concat(t, ", ")) --> 1, 2, 3

Parameter

values...: Variant

Memberikan nilai

Variant

remove

Variant

Menghapus dari array t elemen di posisi pos, mengembalikan nilai elemen yang dihapus. Saat pos adalah angka antara 1 dan #t , itu menyesuaikan elemen t[pos+1], t[pos+2], ..., t[#t] dan menghapus elemen 1>

Parameter

Tabel yang memiliki elemen dihapus.

pos: number

Indeks elemen yang dihapus.

Memberikan nilai

Variant

sort

()

Mengurutkan elemen array t dalam urutan tertentu, dari t[1] ke t[#t] . Jika comp diberikan, maka itu harus menjadi fungsi yang menerima dua elemen dan mengembalikan true ketika elemen pertama harus datang sebelum elemen kedua dalam urutan akhir.

Kesalahan invalid order function for sorting dijatuhkan jika kedua comp(a, b) dan comp(b, a) mengembalikan 1> true1> .

Jika comp tidak diberikan, maka operator Lua standar < digunakan.

Parameter

comp: function

Fungsi perbandingan opcional yang harus digunakan ketika membandingkan elemen di tabel. Fungsi ini menerima dua elemen, dan harus mengembalikan true jika elemen pertama harus diurutkan sebelum elemen kedua dalam urutan akhir.

Nilai Default: nil

Memberikan nilai

()

unpack

Mengembalikan elemen dari daftar yang diberikan. Secara default, i adalah 1 dan j adalah panjang dari list .

Catat bahwa fungsi yang sama ini juga diberikan oleh fungsi global unpack() .

Parameter

list: table

Daftar elemen untuk dibuka kembali.

Indeks elemen pertama untuk dibuka kembali.

Nilai Default: 1

Indeks dari elemen terakhir untuk dibuka kembali.

Nilai Default: #list

Memberikan nilai