© 版权声明:本文为博主原创文章,转载请注明出处

1.Lua变量

  - 变量在使用前,必须在代码中进行声明,即创建该变量

  - 编译程序执行代码之前编译器需要知道如何给语句变量开辟存储区,用于存储变量的值

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

  - Lua中的变量全是全局变量,哪怕是语句块或是函数里,除非用local显示声明为局部变量

  - 局部变量的作用域从声明位置开始到所在语句块结束。

  - 变量的默认值为nil

2.赋值语句

  - 赋值是改变一个变量的值和改变表域的最基本的方法

  - Lua可以对多个变量同时赋值,变量列表和值列表的各个元素用逗号分开,赋值语句右边的值会依次赋给左边的变量

  - 遇到赋值语句Lua会先计算右边的所有的值然后再执行赋值操作,可以依此进行交互变量的值

  - 当变量个数和值的个数不一致时

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

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

  - 尽可能的多使用局部变量

    a. 避免命名冲突

    b. 访问局部变量的速度比全局变量更快

3.索引

  - 对table的索引使用方括号[],也可以使用.

4.variable.lua

a = 5							-- 全局变量
local b = 10 -- 局部变量,不在语句块或函数中,作用域从这里到文件结束 function joke()
c = 15 -- 全局变量,虽然在函数中,但是没有用local显示声明,所以为全局变量
local d = 20 -- 局部变量,只在joke()函数中有效,joke
print("local d = " .. d)
end local e -- 默认值为nil joke() print("a = " .. a)
print("b = " .. b)
print("c = " .. c)
print("d = ", d) -- .. 只能连接字符串,连接nil会报错
print("e = ", e) x, y = "a", "b" -- 多个变量同时赋值
print("x = " .. x .. " , y = " .. y) x, y = y, x -- 交换变量值
print("x = " .. x .. " , y = " .. y) u, v, w = "1", "2" -- 变量个数 > 值的个数,按变量个数补足nil
print("u = " .. u .. " , v = " .. v .. " , w = ", w) q, w, s = "11", "22", "33", "44"-- 变量个数 < 值的个数,忽略多余的值
print("q = " .. q .. " , w = " .. w .. " , s = " .. s) tab = {key = "value"}
print("tab.key = " .. tab.key) -- 使用.引用索引值

5.效果预览

参考:http://www.runoob.com/lua/lua-variables.html

最新文章

  1. Ionic2学习笔记
  2. JMeter - 参数化
  3. SharePoint 2013连接非默认端口的SQL Server
  4. 0502团队项目 SCRUM团队成立
  5. iOS开发拓展篇——如何把项目托管到GitHub
  6. Android 数据通信
  7. 阿里云centos试用
  8. win+r 快速启动应用程序
  9. 使用.net FtpWebRequest 实现FTP常用功能 上传 下载 获取文件列表 移动 切换目录 改名 .
  10. oracle表空间创建
  11. SQLiteOpenHelper与SQLiteDatabase的使用
  12. HDU 1049(蠕虫爬井 **)
  13. HDFS配置参数及优化之实战经验(Linux hdfs)
  14. [LeetCode&amp;Python] Problem 27. Remove Element
  15. 玩转Kafka的生产者——分区器与多线程
  16. Rafy环境配置
  17. JDK1.5新特性,基础类库篇,XML增强
  18. Unity导入3D模型的过程与方法
  19. Thinkphp5笔记三:创建基类
  20. css 播放器按钮实现

热门文章

  1. Shell 环境中的输入输出重定向
  2. 洛谷 P 2756 飞行员配对方案问题
  3. *LOJ#2085. 「NOI2016」循环之美
  4. .NET结束外部进程 C#结束外部进程
  5. HttpClient 简介与使用
  6. CentOS 6.9编译安装Python-2.7.14(python升级)
  7. codevs——1154 能量项链(区间DP)
  8. Oracle并发控制、事务管理学习笔记
  9. JUC线程池深入刨析
  10. python 集合互相转换