常州营销网站建设,成都公司做网站找什么平台,张掖公司网站制作,张槎网站制作这里写目录标题 判断for 循环数值遍历泛型遍历遍历数组遍历对象ipairs 和 pairs的异同 while 循环repeat循环goto基础用法注意事项 判断
for 循环
数值遍历
for exp1,exp2,exp3 do//todoend上述代码是指#xff1a;从exp1 到exp2 以exp3为步长进行循环并执行todo代码#… 这里写目录标题 判断for 循环数值遍历泛型遍历遍历数组遍历对象ipairs 和 pairs的异同 while 循环repeat循环goto基础用法注意事项 判断
for 循环
数值遍历
for exp1,exp2,exp3 do//todoend上述代码是指从exp1 到exp2 以exp3为步长进行循环并执行todo代码exp3默认为1其实exp2可以是函数但是只会执行一次计算出结果就不会再次执行了.
for i1,f(x) doprint(i)
endfor i10,1,-1 doprint(i)
end泛型遍历
遍历数组
a {one, two, three}
for i, v in ipairs(a) doprint(i, v)
end 遍历对象
b {t1rt1,t22
}for i, v in pairs(b) doprint(i, v)
end ipairs 和 pairs的异同
相同 都是能遍历集合表、数组两者均优先按顺序输出没有key的值 不同 ipairs从第一个数字key开始依次输出所有的key1的键值遇到字母下标并不会结束遍历只是不输出而已如果遇到nil则退出 pairs无序输出字母类型key或者数字类型key的键值遇到nil不输出但不会停止遍历
ipairs会按照key的顺序输出数据遇到不连续的数据停止输出pairs会无序输出所有数据pairs和ipairs都会输出没有key的数据ipairs会跳过字符串的key,pairs会输出所有的数据优先输出不带key的按照顺序带key的无序输出ipairs遇到nul会停止pairs不会停止key为数组才是数组下标key为字符串数字则是字符串下标
table {[1]11,[1]1,[3]3}
print(-----------ipairs----------------)
for k,v in ipairs(table) doprint(k,v)
end
print(-----------pairs----------------)
for k,v in pairs(table) doprint(k,v)
end
-----------ipairs----------------
1 1
-----------pairs----------------
1 11
1 1
3 3参考链接
while 循环
while(condition)
dostatement(s)
endstatements(循环体语句) 可以是一条或多条语句condition(条件) 可以是任意表达式在 condition(条件) 为 true 时执行循环体语句,建议有逻辑将condition修改为false否则将死循环。
repeat循环
repeatstatements
until( condition )循环条件判断语句condition在循环体末尾部分所以在条件进行判断前循环体都会执行一次。 如果条件判断语句condition为 false循环会重新开始执行直到条件判断语句condition为 true 才会停止执行。 类似于其他语言中的dowhile循环statements一定会 执行一次当condition为真则跳出循环区分while循环
goto
基础用法
goto FLAG;
a 123
::FLAG::;
print(a)
注意事项
不能从外部goto到代码块中不同跳出或者跳入一个函数中因为函数也是一个代码块