Menu
Coddy logo textTech

table.concat()

Parte da seção Logic & Flow do Journey de Lua da Coddy — lição 5 de 54.

Às vezes, você precisa combinar todos os elementos de uma tabela do tipo lista em uma única string. Lua fornece a função table.concat() especificamente para esse propósito, facilitando a junção de elementos da tabela com um separador de sua escolha.

A sintaxe básica é a seguinte:

local result = table.concat(myTable, separator)

Aqui está um exemplo simples com uma lista de palavras:

local words = {"Hello", "from", "Lua"}
local sentence = table.concat(words, " ")
print(sentence)  -- Saída: Hello from Lua

Você também pode controlar qual parte da tabela concatenar fornecendo as posições inicial e final como argumentos adicionais. Isso é útil quando você deseja combinar apenas elementos específicos:

local numbers = {"1", "2", "3", "4", "5"}
local partial = table.concat(numbers, "-", 2, 4)
print(partial)  -- Saída: 2-3-4

A função table.concat() funciona exclusivamente com tabelas do tipo lista e converte cada elemento em uma string antes de juntá-los.

challenge icon

Desafio

Fácil

Escreva uma função buildPath que recebe uma tabela folders e uma string separator, e retorna uma única string de caminho com todas as pastas unidas pelo separador.

Use table.concat() para combinar todos os nomes de pastas em uma única string de caminho.

Parâmetros:

  • folders (tabela): Uma tabela do tipo lista contendo nomes de pastas como strings
  • separator (string): O caractere ou string a ser usado entre os nomes das pastas (ex: "/" ou "\\")

Retorna: Uma única string com todas as pastas unidas pelo separador (string)

Folha de consulta

A função table.concat() combina todos os elementos em uma tabela do tipo lista em uma única string com um separador:

local result = table.concat(myTable, separator)

Exemplo básico:

local words = {"Hello", "from", "Lua"}
local sentence = table.concat(words, " ")
print(sentence)  -- Saída: Hello from Lua

Você pode especificar as posições inicial e final para juntar apenas elementos específicos:

local numbers = {"1", "2", "3", "4", "5"}
local partial = table.concat(numbers, "-", 2, 4)
print(partial)  -- Saída: 2-3-4

A função funciona exclusivamente com tabelas do tipo lista e converte cada elemento em uma string antes de juntar.

Experimente você mesmo

function buildPath(folders, separator)
    -- Escreva o código aqui
end
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Logic & Flow