Thêm và đọc phần tử
Thuộc phần Giới thiệu về Luau trong hành trình Lua của Coddy. Bài học 14 trên 80.
Bạn đã có thể tăng và giảm kích thước bảng Lua bằng table.insert và table.remove: cả hai hoạt động giống hệt trên mảng có kiểu. Điểm khác biệt là giờ đây Luau kiểm tra những gì bạn chèn vào: nếu bạn thêm chuỗi vào mảng {number}, Luau sẽ báo lỗi ngay khi bạn nhập code, thay vì để một người chơi bối rối phát hiện ra lỗi khi chương trình chạy.
local queue: {string} = {"save", "load"}
table.insert(queue, "quit") -- Thêm vào cuối
table.insert(queue, 1, "help") -- Chèn vào vị trí 1, đẩy các phần tử còn lại sang sau
local last = table.remove(queue) -- Xóa VÀ trả về phần tử cuối cùngtable.remove(t) lấy phần tử cuối cùng ra và trả lại cho bạn; table.remove(t, 1) xóa phần tử đầu tiên rồi dịch mọi thứ xuống. Vì mảng có kiểu {string}, Luau biết giá trị trả về là một chuỗi.
Đọc phần tử cũng dễ dàng như trong Lua thông thường: chỉ số không chứa giá trị, queue[0], queue[-1] hoặc bất kỳ chỉ số nào vượt quá #queue đều âm thầm trả về nil. Không có lỗi nào được báo, vì vậy hãy kiểm tra nil trước khi dùng một giá trị mà bạn không chắc là có tồn tại.
Thử thách
DễThêm và xóa phần tử trong danh sách có kiểu dữ liệu.
- Khai báo
local moves: {string} = {"jump", "run"}. - Thêm
"duck"vào cuối danh sách bằngtable.insert, sau đó chèn"crawl"vào vị trí 1. - Lưu
table.remove(moves)vàolocal removed, sau đó in raremoved,#moves,moves[1]vàmoves[10].
Nhấn Run Code: đầu ra hiển thị duck, 3, crawl và nil.
Tự làm thử
-- 1) khai báo moves: {string} với "jump" và "run"
-- 2) thêm "duck" vào cuối, chèn "crawl" vào vị trí 1
-- 3) xóa phần tử cuối của moves, rồi in ra bốn giá trị
Tất cả bài học trong Giới thiệu về Luau
1Bắt đầu với Luau
Luau là gì?Tại sao nên dùng Luau?Đoạn code Luau đầu tiênKiểm tra kiểu và chế độ lỗiÔn tập: Giới thiệu về Luau4Làm việc với hàm
Kiểu dữ liệu cho tham số và giá trị trả vềKiểu dữ liệu cho hàm ẩn danhHàm không trả về giá trịTham số tùy chọnGiá trị tham số mặc địnhGiá trị Boolean mặc địnhHàm có số lượng tham số thay đổiĐịnh nghĩa kiểu hàmÔn tập: hàm có kiểu dữ liệu2Kiểu dữ liệu cốt lõi
Số, chuỗi và BooleanKiểu 'any': lối thoátKiểu 'unknown'Kiểu Nil và kiểu tùy chọnSuy luận kiểu trong thực tếChú thích kiểu tường minhÔn tập: luyện tập với kiểu dữ liệu cốt lõi5Bí danh kiểu, kiểu hợp và kiểu giao
Bí danh kiểu cho kiểu nguyên thủyKiểu hợpLàm việc với kiểu hợpKiểu literalKiểu giaoKết hợp bí danh kiểuÔn tập: kết hợp kiểu nâng cao3Bảng có kiểu: mảng và Map
Mảng có kiểuThêm và đọc phần tửKiểu Map là gì?Khai báo và truy cập MapDuyệt bảngBảng có cấu trúc hỗn hợpĐọc lướiTạo lướitable.unpackÔn tập: mảng và MapTự luyện tập: Trình biên dịch Luau online