Lua快速入门教程1

简介: Lua快速入门教程1

2.1、变量

1、Lua 变量有三种类型:全局变量、局部变量、表中的域。


a = 5       -- 全局变量

local b = 5 -- 局部变量


function joke()

   c = 5   -- 全局变量

   local d = 6 -- 局部变量

end


joke()

print(c,d)  --> 5 nil


do

   local a = 6 -- 局部变量

   b = 6   -- 对局部变量重新赋值

   print(a,b); --> 6 6

end


print(a,b)  --> 5 6


2、赋值语句


a,b = "hello",111

print(a,b)


-- 可以利用这种方式对变量进行交换操作

a,b = 111,222

print(a,b)


a,b = b,a

print(a,b)


3、当变量个数和值的个数不一致时,Lua会一直以变量个数为基础采取以下策略:

a. 变量个数 > 值的个数 按变量个数补足nil

b. 变量个数 < 值的个数 多余的值会被忽略


a, b, c = 0, 1

print(a,b,c)    --> 0   1   nil


a, b = a+1, b+1, b+2    -- value of b+2 is ignored

print(a,b)          --> 1   2


a, b, c = 0

print(a,b,c)        --> 0   nil   nil

2.2、循环

这里只是列举出与c语言不一样的地方

重复执行循环,直到 指定的条件为真时为止


--[ 变量定义 --]

a = 10

--[ 执行循环 --]

repeat

  print("a的值为:", a)

  a = a + 1

until( a > 15 )


Lua 语言中的 goto 语句允许将控制流程无条件地转到被标记的语句处。


local i = 0

::s1:: do

   print(i)

   i = i+1

end


if i == 1 then

   goto s1

end


2.3、函数

可变参数


function add(...)

   local s = 0  

   for i, v in ipairs{...} do   --> {...} 表示一个由所有变长参数构成的数组  

       s = s + v

   end

   return s

end

print(add(1,2,3,4,5))


Lua 中我们可以将函数作为参数传递给函数


myprint = function (param)

   print("##",param,"##")

end


function add(x,y,myp)

   myp(x+y)

end


add(10,20,myprint)


将可变参数赋值给一个变量

我们也可以通过 select(“#”,…) 来获取可变参数的数量


function average(...)

   local arg = {...} -- arg为一个表,可变参

   local result = 0

   for key,val in ipairs(arg) do

       result = result + val

   end

   print("总长度为:",#arg)

   return result/#arg

end


print(average(1,2,3,4,56))


相关文章
|
5月前
|
存储 JavaScript Java
lua快速入门~在js基础上,知道Lua 和 Js 的不同即可
lua快速入门~在js基础上,知道Lua 和 Js 的不同即可
26 0
|
7月前
|
存储 NoSQL Java
Lua高性能脚本语言快速入门
Lua高性能脚本语言快速入门
151 0
|
消息中间件 JavaScript 小程序
Java与lua互相调用简单教程
Java与lua互相调用简单教程
Java与lua互相调用简单教程
|
Java PHP Python
Lua快速入门
Lua快速入门
197 0
|
安全 IDE 关系型数据库
小白到高手 Lua 超详细教程
Lua是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放,其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。
|
Java PHP Python
Lua快速入门
Lua快速入门
|
NoSQL 安全 Redis
Lua脚本快速入门
Lua脚本快速入门
2324 0
|
IDE C# 开发工具
Lua IDE工具-Intellij IDEA+lua插件配置教程(Chianr出品)
Lua 编译工具IDE-Intellij IDEA 本文提供全流程,中文翻译。 Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 —— 高分辨率用户请根据需求调整网页缩放比例) ...
5537 0