Lua基本语法与数据结构

顺便说几句,因为个别原因,我更多会在手机Lua编译器上写代码,但这不会影响到我们的学习(别忘了,我们只需要学Lua的基本语法,至于电脑上环境的搭建,怎么写进写出文件等等等等,奉行一个原则 ——— 了解与忽视)

我使用的编译器是这个家伙

图片发自简书App


关键词

下列列出了Lua中所有的关键词,每一个关键词都有自己的含义,因此关键词不能作为任何变量与常量。

and break do else
elseif end false for
function if in local
nil not or repeat
return then true until
while


Lua数据类型

Lua中有8个基本类型分别为:nil、boolean、number、string、userdata、function、thread和table。大部分我们会一一讲解,不同于别的语言(C)的是,Lua变量赋值可以直接赋值而不需写出它的数据类型。

C语言
int a = 10;
char b[10]="hello";
Lua语言
a =10
b = "Hello World"

┏(`ー´)┛ 打" ; "是个好习惯,为了方便,手机上我都不打。


探究数据类型之 type 大法

你可以试试打一下这串代码

print(type(10))

可以看到,它输出的结果就是它的数据类型 number

可见 type() 的意思就是输出括号里东西的数据类型。再比如说

print(type("hello World"))

不出意外,输出的结果即使字符串的数据类型——— string


问题: 假如这样写呢

print(type(type))
print(type(true))

仔细想

仔细想

仔细想

仔细想

你会发现输出就是另外两个数据类型 Function(函数)与Boolean(布尔)┏(`ー´)┛


nil 一切皆是空

作为一种数据类型,nil是用来干什么的呢?其实nil就是"空"的意思

我们可以这样来理解。

「a 是一个不纯在的变量」
 print(type(a))

我们观察到输出是

nil

那么nil可以被赋值吗?

当然可以┏(`ー´)┛

tab = {a = 12}
print(tab.a)
tab.a = nil
print(tab.a)

哈哈, 看看输出呢

12
nil

可以看到,第二次a值已经被我们删除掉了


Boolean 真真假假 假假真真

boolean类型只有两个可选值:true(真) 和 false(假),Lua 把 false 和 nil 看作是"假",其他的都为"真":

print(type(true))
print(type(false))
print(type(nil))

if false or nil then
print("至少有一个是 true")
else
print("false 和 nil 都为 false!")

试试上面这串代码


数字 ∩ε∩(加油 数据最后一部分了)

Lua 默认只有一种 number 类型 -- double(双精度)类型(默认类型可以修改 luaconf.h 里的定义)

并且Lua会试着自己运算 自己运算 自己运算 重要的事情说三变!

试试

print(50*2/10)

哈, 看到了吧,它会输出

10

比计算器好用吧。


最后几句话

到此,数据结构部分差不多就完了。

你肯定会有许多想问的。让我来演个相声。

问: 数据类型有什么用?

答:让你知道什么是什么,比如说后面解析代码,我说"这个函数的布尔用的真是巧妙,这个string干净利落,这个number类的数据就是我们所求的" 你就不会这个表情 ヽ(ー_ー )ノ 而是这个表情┏(^0^)┛


问:学这些有什么用,为什么不来点实战,编个游戏看看。

答:ヽ(ー_ー )ノ


问:编程是不是很难,该怎么学?

答:只要有兴趣,都不难。学会了基本语法,我们在codea上正式编程时,你会发现,以前别人写的代码你看作天书,现在你也可以略知一二,并且将之改成自己的代码(┏(`ー´)┛别跟我学 这很缺德)

光靠这篇教程远远不够,你更该在接下来的时间里自己找资料学习。

相比于看视频我更支持看纸质教程。跟着书上学。


问: print是什么?

→_→上面开个玩笑


书曰 天道酬情

巩固所学的 我们开始下一篇教程。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容