基于字符串变量的Lua算法
我这里有一小段代码基于字符串变量的Lua算法,lua,Lua,我这里有一小段代码 for i=1,1000 do n=math.floor(math.sin(i/10.0)*40) s='' for j=1,n do s=s+'-' end print(s) end 但它在第2行给了我一个错误:“尝试对全局的(字符串值)执行算术运算”我不知道它为什么这样做,这让我抓狂。与其他一些语言不同,Lua使用。连接字符串,而不是+,更改 s = s + '-' 到 与其他一些语言不同,Lua使用。连接字符串,而不是+,更改 s
for i=1,1000 do
n=math.floor(math.sin(i/10.0)*40)
s=''
for j=1,n do s=s+'-' end
print(s)
end
但它在第2行给了我一个错误:“尝试对全局的(字符串值)执行算术运算”我不知道它为什么这样做,这让我抓狂。与其他一些语言不同,Lua使用
。
连接字符串,而不是+
,更改
s = s + '-'
到
与其他一些语言不同,Lua使用
。
连接字符串,而不是+
,更改
s = s + '-'
到
不建议使用字符串串联循环,因为它会导致二次副本(这对小字符串并不重要)。改为尝试
string.rep
for i=1,1000 do
n=math.floor(math.sin(i/10.0)*40)
print(string.rep('-',n))
end
不建议使用字符串串联循环,因为它会导致二次副本(这对小字符串并不重要)。改为尝试
string.rep
for i=1,1000 do
n=math.floor(math.sin(i/10.0)*40)
print(string.rep('-',n))
end
使用
string.rep
代替内部for。使用string.rep
代替内部for。