@TOC
第1天内容复习
-- 单行内容注释
--[[
多行内容注释
]]
a = 1 -- 变量赋值
b = 2 -- 变量赋值
s,d,f = 11,"123fghf",213-- 多变量赋值
c = nil -- nil类型
print(a,b,s,d,f,c)-- 打印
第2天内容
提要
加减乘除取余乘方
-- 加法
a = 22
b = 56
c = a + b
print(c) -- print(a+b)
-- 减法
c = a - b
print(c) -- print( a-b)
-- 乘法
c = a * b
print(c) -- print(a*b)
--除法
c = a / b --注意不是反斜杠
print(c) -- print(a/b)
--取余
c = b % a
print(c) -- print(b%a)
--乘方
c = a ^ b
print(c) -- print(a^b)
--四则运算
c = (a+b)*a
print(c) -- print((a+b)*a)
转义字符
课上内容:
print("\\") -- 打印反斜杠
print("\0") -- 打印null
课下拓展:
print('\\'); -- 单斜杠
print("\""); -- 双引号
print("\"\""); -- 双引号
print("\'"); -- 单引号
print("''"); -- 单引号
拼接字符串
print("i".." am".." lua")-- 字符串拼接
数字与字符串互转
函数 转为字符串 tostring
函数 转为数字 tonumber
-- 字符串转换
n = 1 --数字类型
m = "m" -- 字符类型
h = tostring(n)..m -- 转换 拼接
print(h) -- 打印
--数字转换
a = 123 -- 数字
s = "555" -- 字符串
d = a .. tonumber(s) -- 转换 拼接
print(d) -- 打印
其他内容
布尔型和比较运算
布尔型(boolean)只有两个可选值:true(真) 和 false(假)
Lua 把 false 和 nil 看作是false,其他的都为true(包括0这个值,也是相当于true)
a = 12
b = 23
print(a == b) -- 判断相等 f
print(a ~= b) -- 判断不相等 t
print(a > b) -- 判断大于 f
print(a < b) -- 判断小于 t
print(a >= b) -- 判断大于等于 f
print(a <= b) -- 判断小于等于 t
逻辑运算符
and逻辑与操作符。 若 A 为 false,则返回 A,否则返回 B
or逻辑或操作符。 若 A 为 true,则返回 A,否则返回 B
not逻辑非操作符。与逻辑运算结果相反,如果条件为 true,逻辑非为 false
-- 逻辑与
print(true and true) -- t
print(true and false) -- f
print(false and false) -- f
-- 逻辑或
print(true or true) -- t
print(true or false) -- t
print(false or false) -- f
-- 逻辑非
print(not true) -- f
print(not false) -- t
条件判断
if 条件1 then
符合条件1后执行的代码
elseif 条件2 then
符合条件2后执行的代码
else
其他条件执行的代码
end
while 判断依据 do 满足做什么 end
for 临时变量名=开始值,结束值,步长 do 循环的代码 end
a = 1
if a < 10 then
print("a",a)
end
-- 需要注意的: 0这个值,也是相当于true
if 0 then
print("123")
end
--false 和 0
if false then
print("1")
elseif 0 then
print("2")
end
-- nil
if nil then
print("123")
end
-- while 判断依据 do 满足做什么 end
a = 10
while a>1 do
a = a - 1 -- 每次循环减一
print(a) -- 打印下a
end
-- for
for i = 1,10,1 do -- 从1加到10 每次步长为1
print(i)
end
函数
函数是指一段在一起的、可以做某一件事儿的程序,也叫做子程序。在前面的内容中,我们已经接触过了函数的调用,这个函数就是前面用到了很多次的print(…)。调用函数只需要按下面的格式即可:函数名(参数1,参数2,参数3,……)为何要使用函数?因为很多事情都是重复性操作,我们使用函数,可以快速完成这些操作
基础函数
--函数原型
function hello()
print("hello lua")-- 打印
end
--函数调用
hello() --
局部变量 loacal
使用local创建一个局部变量,与全局变量不同,局部变量只在被声明的那个代码块内有效。
function hello()
local a = 1
print(a)-- 打印
end
--函数调用
print(a) -- 函数外打印
hello() --
function add(num1,num2,num3)
local a = num1+ num2 +num3 -- 全加
local b = num1* num2 -- 乘法
return a,b,num3 --多变量返回
end
x1,x2,x3 = add(1,2,3)
print( x1,x2,x3) -- 打印