Lua:如何循环遍历非固定域
简介:
在Lua中,循环遍历一个非固定域(即键名不是数字或者在数组范围内的字符串)是一项重要的任务。本文将介绍如何使用Lua循环遍历一个非固定域。
方法:
1. 使用pairs函数
使用pairs函数可以在遍历非固定域时保留键名以及对应的值。具体用法如下:
```lua
t = {
key1 = "value1",
key2 = "value2",
key3 = "value3",
}
for k,v in pairs(t) do
print(k, v)
end
```
以上例子会打印出:
```
key1 value1
key2 value2
key3 value3
```
2. 使用ipairs函数
使用ipairs函数只能遍历连续数字下标的数组。如果键名不是数字或不是连续数字,则ipairs函数会停止遍历。因此,使用pairs函数遍历非固定域更为常用。
```lua
t = {
"value1",
"value2",
"value3",
}
for i,v in ipairs(t) do
print(i, v)
end
```
以上例子会打印出:
```
1 value1
2 value2
3 value3
```
总结:
使用pairs函数可以遍历非固定域,而ipairs函数只适用于遍历连续数字下标的数组。在实际应用中,建议使用pairs函数。