Lua学习Day01

刚刚从Unity3D培训学校毕业,满以为自己一毕业就可以拿到8K左右的高工资,甚至还奢望过10K以上睡觉。但是现实会给你狠狠的上一课。

在学校里学的那点东西根本不够看,当当新手还可以,但是稍微往深处挖一挖是根本不够的。所以再这里也奉劝还没入行但是想入行的人,如果真的想从事这个职业,千万不要去培训学校,自己自学一些基础的知识。然后去一家公司实习,这才是正确的道路。

目前本人刚刚入职一家游戏公司,公司新项目的客户端是用lua语言写的。苦逼的我根本对lua一窍不通,所以只能从头开始学起,今天是学习的第一天,希望能在这里记录自己学习lua的点点滴滴。

首先说说lua这门语言的特点:

1.简易性,这门语言简单小巧,易于学习。有利于减小lua自身的大小

2.高效,lua 可以说是领域中最快的语言之一了

3.可移植性,lua可以运行在任何平台上


在lua中一般将字符串用双引号“Hello world”,单个字母用单引号‘A’。但是就算颠倒一下也没什么。

- -代表将一行语言给注释掉

--[[     --]]  代表文本注释

lua执行的每段代码,都成为一个“程序块”。一个程序块也就是一连串的语句或命令。

几条连续的语句中可以使用;分隔,也可以不使用,用空格隔开即可

lua是有大小写区分的,A和a定义的是不同的变量

lua中有全局变量和局部变量。使用local定义的变量就是局部变量,不使用任何关键字定义的变量就是全局变量

如果要删除某个全局变量,那么将这个变量的值赋值为nil即可。

function num()        与   function num()

a=1                                  local a=5

local a=5                        a=1

end                                  end

num()                               num()

print(a)    -->1                 print(a)   -->nil

 为什么上面两个函数会造成不同的结果呢?因为第一个函数中a是全局变量,而第二个函数中a是局部变量。而局部变量出了函数是没有值的。



lua有八种基础类型:nil空值   boolen布尔值   number数字  string字符串  userdata自定义类型  function函数  thread县城  table表

函数type可以根据一个值返回其类型名称  例如:print(type(“hello”))  -->string

变量没有预定义的类型,任何变量都可以包含任何类型的值  甚至a=print都是合法的

number类型用于表示实数,lua没有整数类型,lua中的数字可以表示任何32位整数

lua中的字符串是不可变的值。

lua提供了运行时的数字与字符串的自动切换,   例如print(“10”+1)  --> 11

lua中  .. 是字符串操作符。当直接在一个数字后面输入它的时候,必须用空格来分隔他们。不然lua会将第一个点理解为一个小数点。    print(10..20)  -->1020

lua有两个转换函数   tonumber    tostring   如果转换不成功的话会返回nil值

可以在字符串前面放置#来获取该字符串的长度

lua中的table类似于C#中的字典,通过键取值          申明的方式:a={}     赋值的方式a["x"]=10

                                                                                           b=a  是将table的引用给了b,代表b也指向了table表a

当一个程序再没有对一个table的引用时,lua的垃圾收集器最终会删除该table,并复用它的内存

所有table都可以用不同类型的索引来访问值,当需要容纳新值时,table会自动增长。当table的某个元素没有初始化时,它的内容就为nil。删除某个元素的时候,就是给这个元素赋nil值。

在table中a[“x”]与a.x是等效的。   注:X是有引号的。    索引X与“X”是两个不同的索引

长度操作符#可以用来返回一个table中的最后一个索引值      例如: a[#a]=nil   删除最后一个值

table.maxn()可以返回一个table的最大正索引数







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值