table

Hiển Thị Bản Đã Lỗi Thời

*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.

Thư viện này cung cấp các chức năng chung cho việc thao tác bảng/mảng, cung cấp tất cả các chức năng của nó bên trong biến toàn cầu table.Hầu hết các chức năng trong thư viện table cho rằng bảng đại diện cho một mảng hoặc một danh sách.Đối với các chức năng này, "chiều dài" của một bảng có nghĩa là kết quả của operator chiều dài.

Tóm Tắt

Chức Năng

  • clear(table : table):()

    Đặt tất cả các phím trong bảng được cho là nil .

  • Trả về một bản sao nông của bảng được cung cấp.

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

    Trả về phạm vi bảng các thành phần được cho là một chuỗi nơi mỗi thành phần được tách bởi dấu phân cách được cho.

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

    Trả về một bảng mới được lấp đầy với nhiều ví dụ về giá trị được chỉ định.

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

    Trả về chỉ mục của lần đầu tiên xảy ra needle trong haystack bắt đầu từ init .

  • Làm cho bảng được cho phép đọc chỉ đọc.

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

    Chèn giá trị được cung cấp vào vị trí mục tiêu của mảng.

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

    Thêm giá trị được cung cấp vào cuối mảng.

  • Trả về true nếu bảng được cung cấp bị đóng băng và false nếu nó không bị đóng băng.

  • Trả về chìa khóa số tối đa của bảng cung cấp, hoặc bằng không nếu bảng không có chìa khóa số.

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

    Sao chép phạm vi các yếu tố được chỉ định từ một bảng sang bảng khác.

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

    Trả về một bảng mới chứa các giá trị được cung cấp.

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

    Loại bỏ thành phần được chỉ định khỏi mảng, di chuyển các thành phần sau này xuống để lấp đầy khoảng trống nếu có thể.

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

    Sắp xếp các thành phần bảng bằng cách sử dụng chức năng so sánh cung cấp hoặc operator <.

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

    Trả lại tất cả các yếu tố từ danh sách được cho là một tuple.

Chức Năng

clear

()

Đặt giá trị cho tất cả các phím trong bảng được cho là nil .Điều này khiến cho # operator trả về 0 cho bảng được cho.Dung lượng được gán của phần mảng của bảng được duy trì, cho phép tái sử dụng không gian hiệu quả.


local grades = {95, 82, 71, 92, 100, 60}
print(grades[4], #grades) --> 92, 6
table.clear(grades)
print(grades[4], #grades) --> không, 0
-- Nếu điểm được lấp đầy lại với cùng số lượng nhập,
-- không có khả năng thay đổi kích thước mảng tiềm năng đắt tiền sẽ xảy ra
-- because the capacity was maintained by table.clear.

Chức năng này không xóa/phá hủy bảng được cung cấp cho nó. Chức năng này dành riêng cho các bảng sẽ được sử dụng lại.

Tham Số

table: table

Bảng mà chìa khóa sẽ được xóa.

Lợi Nhuận

()

clone

Trả về một bản sao sâu không bị đóng băng của bảng được cung cấp.

Tham Số

Bảng cần sao chép.

Lợi Nhuận

Bản sao của bảng được cung cấp.

concat

Khi được cung cấp một mảng mà tất cả các yếu tố là chuỗi hoặc số, trả về chuỗi t[i] ... sep ... t[i+1] ... sep ... t[j] .Giá trị mặc định cho sep là một chuỗi trống, giá trị mặc định cho i là 1, và giá trị mặc định cho j là #t.Nếu i lớn hơn j, trả về chuỗi trống.

Tham Số

Bảng sẽ được chuyển đổi thành một chuỗi.

sep: string

Chuỗi sẽ được gộp lại giữa mỗi dòng trong bảng.

Chỉ mục bắt đầu của sự kết hợp bảng.

Giá Trị Mặc Định: 1

Chỉ mục kết thúc của sự kết hợp bảng.

Lợi Nhuận

create

Tạo một bảng với phần array được gán cho phần được cho number của các yếu tố, có thể được lấp đầy tùy chọn với phần value được cho.


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

Nếu bạn đang chèn vào các bảng lớn giống như mảng và chắc chắn về giới hạn trên của số lượng yếu tố, thì được khuyến khích sử dụng chức năng này để khởi tạo bảng.Điều này đảm bảo phần mảng của bảng trong bộ nhớ của nó đủ lớn, vì việc thay đổi kích thước có thể đắt tiền.Đối với số lượng nhỏ, thông thường nó không được nhận thấy.

Tham Số

count: number
value: Variant

Lợi Nhuận

find

Variant

Trong bảng có cấu trúc giống như đã cho haystack, tìm lần xuất hiện đầu tiên của giá trị needle, bắt đầu từ chỉ mục init hoặc từ đầu nếu không được cung cấp.Nếu giá trị không được tìm thấy, nil được trả về.

Một thuật toán tìm kiếm song song được thực hiện.


local t = {"a", "b", "c", "d", "e"}
print(table.find(t, "d")) --> 4
print(table.find(t, "z")) --> nil, vì z không có trong bảng
print(table.find(t, "b", 3)) --> nil, because b appears before index 3

Tham Số

haystack: table
needle: Variant
init: number

Lợi Nhuận

Variant

freeze

Chức năng này làm cho bảng được cho phép đọc chỉ đọc, hiệu quả "đóng băng" nó trong trạng thái hiện tại. Cố gắng sửa đổi một bảng bị đóng băng sẽ ném lỗi.

Hiệu ứng đóng băng này là nông, có nghĩa là bạn có thể viết vào một bảng trong một bảng đóng băng.Để đóng băng sâu một bảng, gọi chức năng này theo cách lặp lại trên tất cả các bảng xuống dốc.

Tham Số

Bảng sẽ bị đóng băng.

Lợi Nhuận

Bàn bị đóng băng.

insert

()

Chèn giá trị được cung cấp vào vị trí mục tiêu của mảng.

Tham Số

Bảng được gán vào.

pos: number

Vị trí mà giá trị sẽ được chèn vào.

value: Variant

Giá trị sẽ được gán vào bảng.

Lợi Nhuận

()

insert

()

Thêm giá trị được cung cấp vào cuối mảng.

Tham Số

Bảng được gán vào.

value: Variant

Giá trị sẽ được gán vào bảng.

Lợi Nhuận

()

isfrozen

Chức năng này trả về true nếu bảng được cung cấp bị đóng băng và false nếu nó không bị đóng băng. Bạn có thể đóng băng các bảng bằng cách sử dụng table.freeze() .

Tham Số

Bảng để kiểm tra.

Lợi Nhuận

Whether bảng bị đóng băng từ table.freeze() .

maxn

Trả về chìa khóa số tối đa của bảng cung cấp, hoặc bằng không nếu bảng không có chìa khóa số. Các khoảng trống trong bảng được bỏ qua.

Tham Số

Lợi Nhuận

move

Sao chép các yếu tố trong bảng src từ src[a] lên tới src[b] vào bảng dst bắt đầu tại chỉ mục t .Tương đương với tuyên bố phân配 dst[t], ..., dst[t + (b - a)] = src[a], ..., src[b] .

Giá trị mặc định cho dstsrc . Phạm vi đích có thể chồng lấp với phạm vi nguồn.

Trả về dst vì tiện lợi.

Tham Số

src: table

Bảng nguồn.

Bắt đầu sao chép tại src[a] .

Sao chép lên tới và bao gồm src[b] .

Sao chép vào dst[t], ... .

dst: table

Bảng đích.

Giá Trị Mặc Định: src

Lợi Nhuận

dst , để tiện lợi.

pack

Variant

Trả về một bảng mới với tất cả các tham số được lưu vào chìa khóa 1, 2, v.v.và với một trường "n" với tổng số các tham số.Lưu ý rằng bảng kết quả có thể không phải là một chuỗi.


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

Tham Số

values...: Variant

Lợi Nhuận

Variant

remove

Variant

Loại bỏ khỏi mảng t yếu tố tại vị trí pos, trả lại giá trị của yếu tố bị xóa.Khi pos là một số lẻ giữa 1#t, nó thay đổi các yếu tố t[pos+1], t[pos+2], ..., t[#t] và xóa yếu tố t[#t] .Nếu tham số pos không được cung cấp, pos mặc định dài của bảng loại bỏ yếu tố cuối cùng.

Tham Số

Bảng có một thành phần bị xóa.

pos: number

Chỉ mục của thành phần đang được xóa.

Lợi Nhuận

Variant

sort

()

Sắp xếp các yếu tố của mảng t theo một trật tự nhất định, từ t[1] đến t[#t].Nếu comp được cung cấp, thì nó phải là một chức năng nhận hai yếu tố và trả về true khi yếu tố đầu tiên phải đến trước yếu tố thứ hai trong trật tự cuối cùng.

Lỗi invalid order function for sorting được ném ra nếu cả comp(a, b)comp(b, a) trả về true .

Nếu comp không được cung cấp, thì Luau operator tiêu chuẩn < được sử dụng thay thế.

Tham Số

comp: function

Một chức năng so sánh tùy chọn để sử dụng khi so sánh các yếu tố trong bảng.Chức năng này nhận hai thành phần và nên trả về true nếu thành phần đầu tiên nên được sắp xếp trước thành phần thứ hai trong trật tự cuối cùng.

Giá Trị Mặc Định: nil

Lợi Nhuận

()

unpack

Trả về các thành phần từ danh sách được cho. Mặc định, i là 1 và j là chiều dài của list .

Lưu ý rằng chức năng tương tự này cũng được cung cấp bởi chức năng toàn cầu unpack() .

Tham Số

list: table

Danh sách các thành phần cần được bung ra.

Chỉ mục của thành phần đầu tiên để giải nén.

Giá Trị Mặc Định: 1

Chỉ mục của yếu tố cuối cùng để giải nén.

Giá Trị Mặc Định: #list

Lợi Nhuận