四变量交换在Lua中是如何工作的?
您好,我在lua有此活动: 将数据输入4个不同的变量(A、B、C和D)。将A的内容放在C中,C的内容放在B中,B的内容放在D中,D的内容放在A中。显示内容的新顺序。不要丢失原始数据。 但我不知道怎么做四变量交换在Lua中是如何工作的?,lua,Lua,您好,我在lua有此活动: 将数据输入4个不同的变量(A、B、C和D)。将A的内容放在C中,C的内容放在B中,B的内容放在D中,D的内容放在A中。显示内容的新顺序。不要丢失原始数据。 但我不知道怎么做 您能帮助我吗?在lua中完成值交换的一个简单方法是使用多个赋值 在多重赋值中,Lua首先计算所有值,然后才执行赋值。因此,我们可以使用多重赋值来交换两个值,如中所示 x, y = y, x -- swap `x' for `y'` 对于您的情况,它将如下所示:
您能帮助我吗?在lua中完成值交换的一个简单方法是使用多个赋值 在多重赋值中,Lua首先计算所有值,然后才执行赋值。因此,我们可以使用多重赋值来交换两个值,如中所示
x, y = y, x -- swap `x' for `y'`
对于您的情况,它将如下所示:
a, b, c, d = d, c, a, b
您也可以在Lua参考手册中找到类似的信息 : 赋值语句首先计算其所有表达式,然后才执行赋值。因此,代码
i = 3
i, a[i] = i+1, 20
将[3]设置为20,而不影响[4],因为[i]中的i在被分配为4之前被求值(到3)。同样,这条线
x, y = y, x
交换x和y的值,以及
x, y, z = y, z, x
循环置换x、y和z的值
如果你是lua的新手,这本书是一个很好的资源。我鼓励你读一读,这是一本写得很好的lua指南。这听起来像是家庭作业。这种练习的全部意义在于你自己思考和研究。要求解决方案违背了任何编程练习的目的。您应该阅读Lua手册,在第3章中找到解决方案。如果你从一开始就开始,阅读和做笔记的时间不到15分钟。