将数组中的字符串连接成Lua中的长字符串

时间:2014-03-22 17:23:17

标签: string lua string-concatenation lua-table

到目前为止我有这个

mk= {}
mk = conn:query({ live=true, sql="select * from OrderReports where OrderId= '"..T.OrderId.."'"})
 for a=1, # mk do

 end

我希望将mk中不同索引处的字符串连接起来并存储在一个变量中,比如lk,应该在正文中?

1 个答案:

答案 0 :(得分:5)

直接的方法是将for正文中的字符串连接起来:

local lk = ""
for a = 1, # mk do
    lk = lk .. mk[a]
end

但是当表很大时,这种性能很差,因为字符串在Lua中是不可变的。创建一个新字符串,并在每个循环中复制内容。

相反,您应该使用内置函数table.concat()来完成这项工作:

local lk = table.concat(mk)