Tables as Data Structures
Concat Values
table.concat joins array-style string values into one string.
join strings
Joining values is a common way to turn a small table into display text.
Concat Values
concat_values.lua
Replay: real traced execution (multi-file project)
local middle = "beta"
local joined = table.concat({"alpha", middle, "omega"}, ",")
print("middle=" .. middle)
print("joined=" .. joined)
local middle = "delta"
local joined = table.concat({"alpha", middle, "omega"}, ",")
print("middle=" .. middle)
print("joined=" .. joined)
local middle = "gamma"
local joined = table.concat({"alpha", middle, "omega"}, ",")
print("middle=" .. middle)
print("joined=" .. joined)
middle ← beta, joined ← alpha,beta,omega
1local middle→ beta = "beta" --@middle="delta", "gamma"2local joined→ alpha,beta,omega = table.concat({"alpha", middlebeta, "omega"}, ",")34print("middle=" .. middlebeta)5print("joined=" .. joinedalpha,beta,omega)outputmiddle=beta joined=alpha,beta,omega
middle ← delta, joined ← alpha,delta,omega
1local middle→ delta = "delta"2local joined→ alpha,delta,omega = table.concat({"alpha", middledelta, "omega"}, ",")34print("middle=" .. middledelta)5print("joined=" .. joinedalpha,delta,omega)outputmiddle=delta joined=alpha,delta,omega
middle ← gamma, joined ← alpha,gamma,omega
1local middle→ gamma = "gamma"2local joined→ alpha,gamma,omega = table.concat({"alpha", middlegamma, "omega"}, ",")34print("middle=" .. middlegamma)5print("joined=" .. joinedalpha,gamma,omega)outputmiddle=gamma joined=alpha,gamma,omega
Join the Parts
- The table holds
alpha,beta, andomega. table.concatvisits the values in order.- The separator is
,. - The joined text is
alpha,beta,omega. | Position | Text | | --- | --- | |1|alpha| |2|beta| |3|omega|
Exercise: concat_values.lua
Join three table values with commas and print the middle value and joined text