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

Sim*_*aur 3 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
Run Code Online (Sandbox Code Playgroud)

我希望将不同索引中的字符串mk连接起来并存储在变量中,比如说lk,身体应该是什么?

Yu *_*Hao 5

直接的方法是连接for正文中的字符串,如下所示:

local lk = ""
for a = 1, # mk do
    lk = lk .. mk[a]
end
Run Code Online (Sandbox Code Playgroud)

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

相反,您应该table.concat()为此作业使用内置函数:

local lk = table.concat(mk)
Run Code Online (Sandbox Code Playgroud)