lua基础笔记


lua笔记

–**

## 1.注释

**
–单行注释

--[[
多行注释
]]

–2.编辑器scitd使用
–创建文件保存为.lua,然后运行
–调试快捷键:f5

–3.运算符
–不等于:~= and or not
–#返回字符串或表的长度
–字符串拼接 …

function test2()
	local a="aaa"
	local b="bbb"

	--输出
	--不换行输出:io.write(T1[i])
	io.write(a.."-")
	print(a..b)
end

--test2()

–4.数据类型
–定于数据,数据名直接赋值
–加local为局部变量,不加为全局变量
function test1()
local a=1
b=“bbb”
c=3.5
d=false

--设空
b=nil

--输出
print(a,b,c,d)

end

–5.函数创建:
–无参函数
function functionName()
–函数内容
print(“这是一个函数”)
end
–调用
–functionName()

--有参函数
	function function1(value)
--函数内容
		print("这是一个函数"..value)
	end
	--function1(1)

--可以存在变量里
test=function1
--print(test("-test使用"))

--参数数量可变
function testn(...)
	local a={...}
	for k,v in pairs(a) do
		print(v)
	end
end

--testn(1,5,4,6)

–6.循环

    function test2()
    --while循环
    	local a=1
    	while (a<3) do
    		print(a)
    		a=a+1
    	end
--for循环,for 开始数,结束数,每次递增数
    for i=1,10,2 do
    	print(i)
    end
    	--for each
    	tab={1,5,6,8,66}
    	for k,v in pairs (tab) do
    		print(k,v)
    	end

--repeat until循环(do……while)
    local b=1
    repeat
    	print(a)
    		a=a+1
    until(a>5)
    
    end
	--test2()

–7.判断

function test3()

local a1=1
local b=2
local c=3

--if
if(a>b) then
	print("a大于b,值为"..a1)
end

--if else
if(a>b) then
	print("a大于b,值为"..a)
else
	print("b>a,值为"..b)
end

--if elseif else
if(a>b) then
	print("a大于b,值为"..a)
elseif(b>c) then
	print("b>c,值为"..b)
else
	print("c最大,值为"..c)
end

end

--test3()

–8 表

–求无序table里元素数量

function table_leng(t)
  local leng=0
  for k, v in pairs(t) do
    leng=leng+1
  end
  return leng;
end

–数组

function tablea()
–数组初始化
tab1={1,2,3}
–指定值,赋值
tab1[2]=22
–添加
tab1[4]=4
table.insert(tab1,44)–在末尾插入
table.insert(tab1,4,55)–在索引为4的位置插入

–查找
–在 Lua 中索引值默认是以 1 为起始
print(tab1[2])–输出索引为2的

–移除

table.remove(tab1)--移除数组最后一个数
table.remove(tab1,3)--移除数组指定位置的数
--tab1=nil--删除整个表
--tab1[2]=nil--删除下标为2的

*–字典,初始化键值不用加""

tab2={name="lili",id="dd"}
--添加时,需要""
tab2["key2"]="key2"

–连接concat

fruits={"111","aaaaa","bbbb"}
print("连接后",table.concat(fruits))
-- 指定连接字符
print("连接后",table.concat(fruits,"!"))
-- 指定索引来连接 table
print("连接后",table.concat(fruits,".",2,3))

–遍历

–排序sort

table.sort(tab1)
table.sort(tab2)

	--ipairs只能用来遍历数组
	--ipairs按照索引从1开始,递增遍历,遇到nil就停止
	for k,v in ipairs (tab1) do
			print(k,v)
	end
	print("数组数量"..#tab1)--数组内元素数量
	print("数组数量"..table.getn(tab1))--数组内元素数量

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

	--pairs只能用来遍历字典,也可以用来遍历数组
	--pairs迭代table,遍历表中所有的key和value

	for k,v in pairs (tab2) do
			print(k,v)
	end
	print(table_leng(tab2))--字典内元素数量

–最大值

function GetMaxNum(tab)
  local tem=0
  for k,v in pairs(tab) do
        if(tem<v) then
		   tem=v
		end
	end
	return tem
end

print("表中最大值:",GetMaxNum(tab1))

end

tablea()

–排序
table.sort(tableName);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

烧仙草奶茶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值