table
*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
Đặ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.
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.
Trả về một bảng mới được lấp đầy với nhiều ví dụ về giá trị được chỉ định.
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.
Chèn giá trị được cung cấp vào vị trí mục tiêu của mảng.
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ố.
Sao chép phạm vi các yếu tố được chỉ định từ một bảng sang bảng khác.
Trả về một bảng mới chứa các giá trị được cung cấp.
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ể.
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 <.
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, 6table.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ố
Bảng mà chìa khóa sẽ được xóa.
Lợi Nhuận
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ố
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ố
Lợi Nhuận
find
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")) --> 4print(table.find(t, "z")) --> nil, vì z không có trong bảngprint(table.find(t, "b", 3)) --> nil, because b appears before index 3
Lợi Nhuận
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
Thêm giá trị được cung cấp vào cuối mảng.
Tham Số
Bảng được gán vào.
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() .
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 dst là src . 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ố
Lợi Nhuận
dst , để tiện lợi.
pack
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ố
Lợi Nhuận
remove
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 và #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.
Lợi Nhuận
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) và 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ố
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() .