Lua Stringbuilder

我们需要对一个10000字节的字符串str增加一个字符的时候,就会创建一个10001字节的字符串str_copy,然后再复制str到str_copy里面。所以我们需要字符串缓冲(string buffer)来解决这个问题,而Lua里面,string buffer就可以使用table来实现。

[plain]  view plain  copy
  1. local t = {}  
  2. local test = {"a","x","def","type","fire","time","bottle","xo","wtf"}  
  3. for i, var in ipairs(test) do  
  4.     t[#t+1] = var  
  5.     t[#t+1] = "\n"  
  6. end  
  7. local s = table.concat(t)  
  8. print(s)  

当然我们也可以指定一个分隔符作为table.concat方法的第二个参数:

[plain]  view plain  copy
  1. local t = {}  
  2. local test = {"a","x","def","type","fire","time","bottle","xo","wtf"}  
  3. for i, var in ipairs(test) do  
  4.     t[#t+1] = var  
  5. end  
  6. t[#t+1] = ""  
  7. local s = table.concat(t,"\n")  
  8. print(s)  

猜你喜欢

转载自blog.csdn.net/qq_14914623/article/details/80716801
LUA