您的位置:首页 > 编程语言 > Lua

lua学习笔记3之数组与结构

2013-07-30 16:14 791 查看
days =
{
"Sunday","monday","Tuesday","wendnesday","thrusday","friday","staturday"
};	--类似于初始化数组

print(days[1]);	--注意和C/C++不同 他从1开始 而不是0

tab = {math.sin(0),math.sin(1),math.sin(2)};	--值
print(tab[1]);

a = {x,y}; --类似于定义一个结构
a.x = 1;
a.y = 2;
print(a);	--把这个表的地址打出来了
print(a.x,a.y);	--用逗号隔开会自动空8个空格

w = {x=10,y=12,lable = "console"};	--声明时候直接赋值
print(w["x"]);	--可以w.x 也可以w["x"] 这样取值
print(w[x]);	--nil 因为x是没有初始化的 ,没有值
print(w.x,w.y,w.lable);

print(w[1]);	--凭空出来的
w[1] = "another filed";
tab.f = w;
print(tab.f[1]);	--现在tab.f就代表 w了
print(tab.f.x);

---------------------结构里存在结构-----------------
polyline = {color = "bule", with =2,npoint =4,
{x=0,y=0},
{x= -10 ,y=0},
{x = -10,y=1},
{x= 0, y=1}
};			--这是结构不是数组
--		print(ployline[1]);企图这样访问color?,这样访问的是结构里的数组
print(polyline[1].x);
print(polyline.color);
-------------------------------------------------------------------
opname = {["+"] = "add", ["-"] = "sub",["*"] = "mul",["/"] = "div"};	--["+"]	用表达式显示的表示将被初始化的索引

i=20;
s = "-";
a = {[i+0] = s,[i+1] = s .. s,[i+2] = s .. s .. s};

print(s);
print(opname[s]);

print(a[20]);
print(a[21]);
print(a[22]);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Lua