lua学习 第一章语言要点

这篇博客介绍了Lua语言的基本语法,包括无类型的变量定义、常见的操作符、条件语句和循环结构。重点讲解了while、repeat、numeric for循环的区别,并提到了函数的使用,如局部变量的声明和返回多个值的特点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第一章语言要点

基本语法

lua不使用分号和大括号。

变量和类型

lua的变量是无类型的,可以直接定义x=2。也可以此意定义多个变量x,y,z= 1,2,3

几个值得注意的常量:

  1. nnil通常代表未定义的值,指nothing’
  2. true和false:在条件中,false和nil都是false,其他均为true

操作

or   and  <   > <=  >=  ~=(不等于) ==  +   -  ×  /  %  not(取反) 

  1. or and not是逻辑操作:或、与、非
  2. .. 是字符串链接操作
  3. ^ 表示次方,比如2^3即2的三次方
  4. # 表示获取字符串或者表格的长度

值得注意的是 不同于python和c++,lua中不存在i+=2这种指令。而操作本身是有限制的,不能出现a=b=1这种指令。

条件

其条件语句结构:

if state == 5 them
  do something
elseif foo then
  a = true
else 
  b = false
end

循环

while循环

i = 1
while i <= 5 do 
  i = i + 1
  print(i)
end
  

repeat循环

i = 5
repeat
  i = i - 1
  print(i)
until i == 1

Numeric for

for循环与c++的有些不同在C++中:

for (i = start;i<limit;i+=step)
{
dosomething

}

而在lua中

for i = start, limit ,step
  dosomething
end

类似的while的Numeric循环:

i = start 
while i <= limit do
  dosomething
  var = var + step
end

循环终止条件

在lua中也可以使用break,命令强制从循环跳出,但是没有continue指令让循环继续执行。

函数

function foo()
  local x,y = something(4,5)
  return x^y
end
function name(arg1, arg2)
  local para1 = (arg1+arg2)/2
  local para2 = arg1-arg2
  return para1+para2,para1*para2
end

几点说明:

  1. 可以看到在函数内声明局部变量时,需要加上前缀local
  2. 函数可以返回多个值
  3. 不支持设置默认参数值,但有许多其他方法可以实现,详情见第三部分。

参考链接:

http://nova-fusion.com/2012/08/27/lua-for-programmers-part-1/

https://blog.youkuaiyun.com/Hungryof/article/details/51992895

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值