读《Lua程序设计》笔记--类型与值 table的创建是通过“构造表达式”完成的,最简单的构造表达式就是{}。 1 2 3 4 5 6 7 8 9 a = {} --创建一个table, 并将它的引用存储到a k = "x" a[k] = 10 --新条目,key="x", value=10 a[20] = "great" --新条目, key=20, value="great" print(a["x"]) -->10 k = 20 print(a[k]) -->"great" a["x"] = a["x"] + 1 --递增条目"x" print(a["x"]) -->11 所有table都可以用不同类型的索引来访问值,当需要容纳新条目时,table会自动增长。 1 2 3 4 5 6 7 8 9 10 11 a = {} --空的table --创建1000个新条目 for i=1,10000 do a[i] = i*2 end print(a[9]) -->18 a["x"] = 10 print(a["x"]) -->10 print(a["y"]) -->nil a.x = 10 -- 等同于a["x"] = 10 print(a.x) -- 等同于print(a["x"]) print(a.y) -- 等同于print(a["y"]) -- a.x和a[x]是不同的。前者表示a["x"],后者表示以变量x的值来索引table。