这是我在不使用表格的情况下将字符串分解为每个单独字符的列表的代码:
function explode(s)
if#s==1 then
return s
end
return s:sub(1,1),explode(s:sub(2))
end
其中#s==#({explode(s)})
为了使这段代码更短,我想这样做:
function explode(s)
return#s>1 and(s:sub(1,1),explode(s:sub(2)))or s
end
但这不起作用,因为 '[condition] a and [result value] b or [alternative] c' 不需要多个结果或替代方案。是否有其他方法可以仅使用一条语句返回相同的结果?