Lua 语法实用技巧讲解

Posted 引擎猫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Lua 语法实用技巧讲解相关的知识,希望对你有一定的参考价值。


今天来讲一讲在日常开发lua中使用到的一些使用技巧。

本章会用c#来和lua对照着来讲。

首先第一个是C#的switch。在lua当中并没有switch,但是在lua当中我们可以使用table来实现。比如说C#代码是这样的:

switch (n) { case 1: //do something break; case 2: //do something break;        }

那么在lua当中我们就可以这么实现:

local switch = { [1] = function () --do something, end, [2] = function () --do something, end,}
switch(n)


那么还有一个很好用的东西呢就是条件运算符。

举个例子,在c#当中 a = a>0 ? b : c 

这句代码的意思是当a > 0 则返回b,否则返回c

那么在lua当中就应该这么写 a = a > 0 and b or c

是相同的结果lua当中的and 和 or 相当于 C#当中的&& 和 ||

在很多人的印象当中,a && b 就是当ab都为真的时候返回true,而其中一个为假的时候则返回false。但是我们可以换一种思维方式,当a为真的时候返回a本身,当a为假时返回b。

两者都为真的时候才返回true,那么当a为真的时候,结果是不是取决于b?而当a为假的时候,那么结果就是a,所以lua当中的and就是这个意思,并且他不止可以作用于bool类型,还可以作用于其他类型,反过来a||b也一样,当a为真时,结果就是a,当a为假时,结果就是b。想告诉大家的就是结果并不是固定的去返回一个bool值,而是返回他们两者当中的其中一个值。




引擎猫QQ交流群:690504410



以上是关于Lua 语法实用技巧讲解的主要内容,如果未能解决你的问题,请参考以下文章

Lua 入门到精通( 02 Lua 基本语法)《做一个脚本高手》

XLua系列讲解_使用VsCode来书写Lua代码

XLua系列讲解_使用VsCode来书写Lua代码

XLua系列讲解_使用VsCode来书写Lua代码

lua-调试技巧

lua-调试技巧