Lua 语言基础


a = {
    10,
    20,
    "sdfsdf"
}
-- 数组定义
a[1] = 1;
a[2] = 3;
a[3] = "hello world"

-- 交换变量
a,b = 1,2
b,a = 2,111

c = 1
c = c + 1

function add(a ,b)
    return a , b
end

print(add(a,b))

-- print("helle" + "world")
print("helle" .. "world")

-- 函数定义 形参定义与js 类似
function foo()
    local aa = 1 --局部变量 去掉local 变全局
end

foo()
print(aa)
function foundWatermelon( ... )
    return false
end

-- 流程控制 if 
if foundWatermelon () then 
    print("xigua")
elseif true then
    print("jsjsjsjsj")
else 
    print("baozi")
end

-- 流程控制 while  
local i = 0
while i < 10 do
    print(i)
    i = i + 1
end

-- lua i++ 去了哪里?
for i = 9 , 0 ,-1 do
    print(i .. " for ")
end

-- for 的泛型遍历
bb = {
    ["foo"] = 1,
    [100] = true,
    [1] = 29,
    [2] = 30
}
print("------迭代器:pairs散列 无序-------")
-- 打印映射
for k,v in pairs(bb) do
    print(k,v)
end
print("------迭代器:ipairs有序-------")
for k,v in ipairs(bb) do
    print(k,v)
end

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

-- Lua 的包(package) 
local  clazz = require("foo")
print(clazz)  --  table : 007ac1b8
print(clazz.foo(1,2))
-- require  加载文件,运行
-- dofile 加载并且运行
-- dofile 会不停加载
print("require dofile ---  区别")
for i = 1,2 do 
    print(require("foo"))
end


for i = 1,2 do
    print(dofile("foo.lua"))
end
-- table: 0091c500
-- table: 0091c500
-- table: 0091c5a0
-- table: 0091c2d0

print("-----dostring()-- 没了---")
-- dostring("print(\"hellowowo\")")

print("-------系统库------")
--动态添加数组 

local  t = {}

for i = 1, 10 do
    table.insert(t,i)
end

for k,v in pairs(t) do
    print(k,v)
end

print("打印table 里面的方法")
for k,v in pairs(table) do
    print(k,v)
end
-- concat  function: 62994df0
-- sort    function: 62995430
-- move    function: 62994330
-- remove  function: 62995270
-- unpack  function: 62995120
-- insert  function: 62994f90
-- pack    function: 629945c0

print("---------映射删除--------")
t.a = nil

print("长度取出来")
local  tt = "helloworld"
print(#tt)
local aaa = {1,2}
print(#aaa)

print("打印类型")
print(type(aaa))

local  str = tostring(3.14)
print(type(str))

print("-------格式匹配-------")
print(string.format("hi %d",33))

--  c 对比 学语言对比才是真理
-- table =数组 + 映射
-- 1开始,连续使用,自动扩展
-- 什么都是值
-- 多个返回值

-- 逻辑运算 英文字母

-- 迭代器:ipairs有序
-- 迭代器:pairs散列

-- 迭代器 for k,v
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值