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

lua基础

2014-08-13 13:25 225 查看
lua基础知识:
--hello wrold inlua
print("Hello World.")

---for i=10,1,-1 do
for i=1,4 do
print("i is now" ..i);
end

for i=10,1,-1 do
print("i is now"..i)
end

print("-------------------------------------")

---if elseif else end
for i=1,5 do
print("i is now"..i)
if i<2 then
print("small")
elseif i<4 then
print("medium")
else
print("big")
end
end

--table

--arrays
myData = {}
myData[0] = "foo"
myData[1] = 42

--hash tables
myData["bar"] = "abc"

for key,value in pairs(myData) do
print(key.."="..value)
end

b={x = 1, ["hello"] = "world!"}
for key, value in pairs(b) do
print(key.."="..value)
end

b["x"] = 10;
print(b["x"])
b.x = 11;
print(b.x)

myPolygon = {
corlor="blue",
thickness=2,
["ccc"]=5,
npoints=4;

{x=0,y=0},
{x=10,y=11},
{pointx="x", pointy="y"}
}

print(myPolygon.corlor)
print(myPolygon["corlor"])
print(myPolygon.ccc)
print(myPolygon[2].x)

print("-----------------------------------------")
--function
function func(a,b)
local c = a^2 + b^2;
return math.sqrt(c);
end;

print(func(3,4));

print("不定参数")

function func2(...)
for i=1,arg.n do
print("参数:"..arg[i]);
end;
end;

func2(1, 6)

--table 作为参数

function func3(t)
for key,value in pairs(t) do
print(key.."="..value)
end
end

func3({x=10,y=20});
func3{x=11,y=12};
func3{x=0,muiltlinstring=[[sun
feng
sunfeng]]};

--多返回值

function max(a)
local m = a[1];
local index=1;
for i,v in pairs(a) do
if v > m then
m = v;
index = i;
end;
end;

return m,index;
end;

print(max{2,3,5,1,9,10,8});
print(max({3,9,2,4}).."   fdasfdaf")
print("   fdasfdaf" .. max({3,9,2,4}))
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: