lua的使用

function的定义

--函数的第一种定义  function后不需要添加do

test1=function()
    print("这是第一种函数的定义")
end

--函数的第二种定义  function后不需要添加do
function test2()
    print("这是第二种函数的定义")

end

test1()
test2()

--"\n"换行   "\t"tab
print("============================".."\n".."通过指向的方式添加函数".."\n".."============================")

test={}
test.test3=function()
    print("通过指向定义函数第一种")
end

test.test3()

table的insert和remove

tab1 = { a = "val1","11111" ,"222",
         b = "val2", "val3",
         "aaaa" }

--table.insert(表名,键,value)如果不添加键,默认添加到最后一个

table.insert(tab1,4,4)
table.insert(tab1,1)
for k, v in ipairs(tab1) do
    print(k,v)
end

--table.remove(表名,键,value)如果不添加键,默认删除最后一个


table.remove(tab1)
for k, v in ipairs(tab1) do
    print(k,v)
end
table.insert()

sort

a ={21,33,56,7,8,999,343,43}

table.sort(a)  --sort 可用来排序,默认从小到大
for k,v in pairs (a) do
    print(v)
end

repeat

i=1
repeat --先运行一遍,到达until的时候在进行判断
    print("第"..i.."次")
    i=i+1
until i>3

if的一些使用

a=41.5
if a%2==0 then --除数取余
    print("这是一个偶数")
elseif a%2==1 then

    print("这是一个奇数")
else
    print("输入错误请重新输入")

end

for的使用 pairs和ipairs的使用

local map = {
    [1] = "hello",
    [2] = "world",
    ["username"] = "test",
    [4] = "123",
}

--ipairs只遍历k为数字,步长为1,遇到不连续的k就会停止,(如:k无3,只会输出到k为2)无k为1的直接不输出。
print("下面打印的是ipairs的value值")
for k, v in ipairs(map) do

    print(v)   --v打印的value的值

end

--pairs 会全部打印出来,无顺序的输出
print("======================")
print("下面打印的是pairs的value值")
for k, v in pairs(map) do

    print(v)   --v打印的value的值

end


print("======================")
print("下面打印的是pairs的key值")

for k,v in pairs(map) do
    print(k) --k只打印key间的值
end



猜你喜欢

转载自blog.csdn.net/qq_37489565/article/details/84071637
今日推荐