Menu
CoddyTech

table.concat()

Thuộc phần Logic và luồng chương trình trong hành trình Lua của Coddy. Bài học 5 trên 54.

Đôi khi, bạn cần kết hợp tất cả phần tử trong một bảng dạng danh sách thành một chuỗi duy nhất. Lua cung cấp hàm (function) table.concat() dành riêng cho mục đích này, giúp bạn dễ dàng nối các phần tử trong bảng bằng dấu phân cách tùy chọn.

Cú pháp cơ bản như sau:

local result = table.concat(myTable, separator)

Đây là một ví dụ đơn giản với danh sách các từ:

local words = {"Hello", "from", "Lua"}
local sentence = table.concat(words, " ")
print(sentence)  -- Đầu ra: Hello from Lua

Bạn cũng có thể chọn phần nào của bảng sẽ được nối bằng cách cung cấp vị trí bắt đầu và kết thúc làm đối số bổ sung. Cách này hữu ích khi bạn chỉ muốn kết hợp một số phần tử cụ thể:

local numbers = {"1", "2", "3", "4", "5"}
local partial = table.concat(numbers, "-", 2, 4)
print(partial)  -- Đầu ra: 2-3-4

Hàm table.concat() chỉ hoạt động với bảng dạng danh sách và chuyển từng phần tử thành chuỗi trước khi nối chúng lại.

challenge icon

Thử thách

Dễ

Viết một hàm (function) buildPath nhận một bảng folders và một chuỗi separator, rồi trả về một chuỗi đường dẫn duy nhất, trong đó tất cả thư mục được nối với nhau bằng dấu phân cách.

Dùng table.concat() để kết hợp tất cả tên thư mục thành một chuỗi đường dẫn duy nhất.

Tham số:

  • folders (table): Một bảng dạng danh sách chứa tên thư mục dưới dạng chuỗi
  • separator (string): Ký tự hoặc chuỗi dùng giữa các tên thư mục (ví dụ: "/" hoặc "\\")

Giá trị trả về: Một chuỗi duy nhất gồm tất cả thư mục được nối với nhau bằng dấu phân cách (string)

Tự làm thử

function buildPath(folders, separator)
    -- Viết code ở đây
end
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Logic và luồng chương trình

Tự luyện tập: Trình biên dịch Lua online