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 umum untuk manipulasi tabel/array, menyediakan semua fungsinya di dalam variabel global table.Sebagian besar fungsi di perpustakaan table menganggap bahwa tabel mewakili array atau daftar.Untuk fungsi ini, "panjang" dari tabel berarti hasil operator panjang.

Rangkuman

Fungsi

  • clear(table : table):()

    Atur semua kunci di tabel yang diberikan ke nil .

  • Kembalikan salinan dangkal dari tabel yang disediakan.

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

    Kembalikan rentang tabel yang diberikan sebagai string di mana setiap elemen dipisahkan oleh pemisah yang diberikan.

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

    Kembalikan tabel baru yang diisi dengan banyak instansi nilai yang ditentukan.

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

    Kembalikan indeks dari pertama kali terjadinya needle dalam haystack mulai dari init .

  • Membuat tabel yang diberikan hanya dibaca.

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

    Memasukkan nilai yang disediakan ke posisi target array.

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

    Menambahkan nilai yang disediakan ke akhir array.

  • Kembalikan true jika tabel yang diberikan dibekukan dan false jika tidak dibekukan.

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

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

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

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

    Kembalikan tabel baru yang berisi nilai yang disediakan.

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

    Menghapus elemen yang ditentukan dari array, bergeser ke elemen berikutnya untuk mengisi ruang kosong jika memungkinkan.

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

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

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

    Kembalikan semua elemen dari daftar yang diberikan sebagai tuple.

Fungsi

clear

()

Mengatur nilai untuk semua kunci dalam tabel yang diberikan ke nil .Ini menyebabkan operator # kembali 0 untuk tabel yang diberikan.Kapasitas yang ditugaskan dari bagian array tabel dipertahankan, yang memungkinkan untuk penggunaan ulang efisien dari ruang.


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

Fungsi ini tidak menghapus/menghancurkan tabel yang disediakan kepadanya. Fungsi ini dimaksudkan untuk digunakan secara khusus untuk tabel yang akan digunakan kembali.

Parameter

table: table

Tabel yang kuncinya akan dihapus.

Memberikan nilai

()

clone

Kembalikan salinan dangkal yang tidak dibeku dari tabel yang disediakan.

Parameter

Tabel yang akan diklon.

Memberikan nilai

Klon dari 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 saya lebih besar dari j , mengembalikan string kosong.

Parameter

Tabel yang akan diubah menjadi string.

sep: string

String yang akan disatukan di antara setiap entri di tabel.

Indeks awal dari koncatenasi tabel.

Nilai Default: 1

Indeks akhir dari koncatenasi tabel.

Memberikan nilai

create

Membuat tabel dengan bagian array yang ditugaskan ke number elemen yang diberikan, opcional diisi dengan value yang diberikan.


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

Jika Anda menyisipkan ke dalam tabel besar seperti array dan yakin dengan batas atas yang wajar untuk jumlah elemen, disarankan untuk menggunakan fungsi ini untuk menginisialisasi tabel.Ini memastikan bagian array tabel dari memori cukup besar, karena mengubah ukurannya bisa mahal.Untuk jumlah kecil ini biasanya tidak terlihat.

Parameter

count: number
value: Variant

Memberikan nilai

find

Variant

Dalam tabel serupa yang diberikan haystack , temukan kemunculan pertama nilai needle , mulai dari indeks init atau awal jika tidak disediakan.Jika nilai tidak ditemukan, nil dikembalikan.

Algoritma 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 keadaan saat ini. Mencoba memodifikasi tabel yang dibekukan menyebabkan kesalahan.

Efek pembekuan gratis ini dangkal, yang berarti Anda dapat menulis ke tabel dalam tabel beku.Untuk membekukan tabel secara mendalam, panggil fungsi ini secara berulang pada semua tabel turunan.

Parameter

Tabel yang akan dibekukan.

Memberikan nilai

Meja beku.

insert

()

Memasukkan nilai yang disediakan ke posisi target array.

Parameter

Tabel yang ditambahkan ke.

pos: number

Posisi di mana nilai akan dimasukkan.

value: Variant

Nilai yang akan ditambahkan ke tabel.

Memberikan nilai

()

insert

()

Menambahkan nilai yang disediakan ke akhir array.

Parameter

Tabel yang ditambahkan ke.

value: Variant

Nilai yang akan ditambahkan ke tabel.

Memberikan nilai

()

isfrozen

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

Parameter

Tabel untuk diperiksa.

Memberikan nilai

Apakah tabel dibekukan dari table.freeze() .

maxn

Kembalikan kunci numerik maksimum dari tabel yang disediakan, atau nol jika tabel tidak memiliki kunci numerik. Celah di tabel diabaikan.

Parameter

Memberikan nilai

move

Salin elemen di tabel src dari src[a] sampai src[b] ke tabel dst mulai dari indeks t .Setara dengan pernyataan penugasan dst[t], ..., dst[t + (b - a)] = src[a], ..., src[b] .

Default untuk dst adalah src . Jangkauan tujuan mungkin tumpang tindih dengan jangkauan sumber.

Kembalikan dst untuk kenyamanan.

Parameter

src: table

Tabel sumber.

Mulai menyalin pada src[a] .

Salin hingga dan termasuk src[b] .

Salin ke dst[t], ....

dst: table

Meja tujuan.

Nilai Default: src

Memberikan nilai

dst , untuk kenyamanan.

pack

Variant

Kembalikan tabel baru dengan semua argumen disimpan ke kunci 1, 2, dlldan dengan bidang "n" dengan jumlah argumen total.Perhatikan 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, men返ikan nilai elemen yang dihapus.Ketika pos adalah bilangan antara 1 dan #t, ia bergeser ke bawah elemen t[pos+1], t[pos+2], ..., t[#t] dan menghapus elemen t[#t].Jika parameter pos tidak disediakan, pos default ke panjang tabel yang menghapus elemen terakhir.

Parameter

Tabel yang memiliki elemen yang dihapus.

pos: number

Indeks elemen yang dihapus.

Memberikan nilai

Variant

sort

()

Urutkan 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 kembali benar ketika elemen pertama harus datang sebelum yang kedua dalam urutan terakhir.

Kesalahan invalid order function for sorting dilemparkan jika keduanya comp(a, b) dan comp(b, a) kembali true .

Jika comp tidak diberikan, maka operator Luau standar < digunakan sebagai gantinya.

Parameter

comp: function

Fungsi perbandingan opsional untuk digunakan saat membandingkan elemen di tabel.Fungsi ini menerima dua elemen, dan harus kembali benar jika elemen pertama harus disortir sebelum kedua di urutan terakhir.

Nilai Default: nil

Memberikan nilai

()

unpack

Kembalikan elemen dari daftar yang diberikan. Nantinya, i adalah 1 dan j adalah panjang dari list .

Perhatikan bahwa fungsi yang sama ini juga disediakan oleh fungsi global unpack() .

Parameter

list: table

Daftar elemen yang akan dibuka.

Indeks elemen pertama untuk dibongkar.

Nilai Default: 1

Indeks elemen terakhir untuk dibongkar.

Nilai Default: #list

Memberikan nilai