如何将遍历键值对表的循环操作转化为一个长尾?

2026-04-01 19:011阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计554个文字,预计阅读时间需要3分钟。

如何将遍历键值对表的循环操作转化为一个长尾?

描述一个这样的定义:`myTable={myValue=nil, myOtherValue=nil}` 在这样的循环中,我该如何迭代?伪代码如下:`for key, value in myTable do value=foobar end` 而且如果有关键字帮助,我真的不在意。

说我有一个这样定义的表:

myTable = {myValue = nil,myOtherValue = nil}

在这样的每个时装循环中,我将如何迭代?

for key,value in myTable do --pseudocode value = "foobar" end

而且,如果有帮助,我真的不在乎关键,只是价值.

没有价值的键(即:不为零)不存在.关于Lua,myTable是一张空表.

你可以迭代一个空的表,但这不是有用的.

此外:

for key,value in myTable do --pseudocode value = "foobar" end

这个“伪代码”没有任何意义.您不能通过修改局部变量的内容来修改表; Lua不行.您无法获得对表条目的引用;你只能从表中获取一个值.

如果要修改表的内容,则必须实际修改表.例如:

for key,value in pairs(myTable) do --actualcode myTable[key] = "foobar" end

注意使用myTable.在某种程度上不使用表本身就不能修改表.无论是通过myTable访问的表,还是通过一些其他变量存储对表的引用.

一般来说,在迭代表时修改表可能会导致问题.然而,Lua说:

The behavior of next is undefined if, during the traversal, you assign any value to a non-existent field in the table. You may however modify existing fields. In particular, you may clear existing fields.

如何将遍历键值对表的循环操作转化为一个长尾?

因此修改已经存在的字段的值是非常有效的.并且键显然已经存在于表中,因此可以修改它.你甚至可以把它设为零,没有任何问题.

Lua中的变量只不过是持有者的价值观.表包含值; myTable [key]返回一个值.您可以将该值存储在变量中,但更改变量不会更改myTable [key]的值.由于表格是通过引用存储的,所以您可以在一个变量中更改表的内容,并查看另一个变量,但这只是表的内容,而不是表本身.

标签:lua

本文共计554个文字,预计阅读时间需要3分钟。

如何将遍历键值对表的循环操作转化为一个长尾?

描述一个这样的定义:`myTable={myValue=nil, myOtherValue=nil}` 在这样的循环中,我该如何迭代?伪代码如下:`for key, value in myTable do value=foobar end` 而且如果有关键字帮助,我真的不在意。

说我有一个这样定义的表:

myTable = {myValue = nil,myOtherValue = nil}

在这样的每个时装循环中,我将如何迭代?

for key,value in myTable do --pseudocode value = "foobar" end

而且,如果有帮助,我真的不在乎关键,只是价值.

没有价值的键(即:不为零)不存在.关于Lua,myTable是一张空表.

你可以迭代一个空的表,但这不是有用的.

此外:

for key,value in myTable do --pseudocode value = "foobar" end

这个“伪代码”没有任何意义.您不能通过修改局部变量的内容来修改表; Lua不行.您无法获得对表条目的引用;你只能从表中获取一个值.

如果要修改表的内容,则必须实际修改表.例如:

for key,value in pairs(myTable) do --actualcode myTable[key] = "foobar" end

注意使用myTable.在某种程度上不使用表本身就不能修改表.无论是通过myTable访问的表,还是通过一些其他变量存储对表的引用.

一般来说,在迭代表时修改表可能会导致问题.然而,Lua说:

The behavior of next is undefined if, during the traversal, you assign any value to a non-existent field in the table. You may however modify existing fields. In particular, you may clear existing fields.

如何将遍历键值对表的循环操作转化为一个长尾?

因此修改已经存在的字段的值是非常有效的.并且键显然已经存在于表中,因此可以修改它.你甚至可以把它设为零,没有任何问题.

Lua中的变量只不过是持有者的价值观.表包含值; myTable [key]返回一个值.您可以将该值存储在变量中,但更改变量不会更改myTable [key]的值.由于表格是通过引用存储的,所以您可以在一个变量中更改表的内容,并查看另一个变量,但这只是表的内容,而不是表本身.

标签:lua