您的位置:首页 > 编程语言 > Lua

Lua表达式

2016-04-10 16:50 405 查看

表达式

1.算术运算符

算数运算符有:
+
(加)、
-
(减)、
*
(乘)、
/
(除)、
^
(指数)、
%
(取模)和
-
负号。

2.关系运算符

关系运算符有:
<
(小于)、
>
(大于)、
<=
(小于等于)、
>=
(大于等于)、
~=
(不等于)、
==
(等于)。

3.逻辑运算符

逻辑运算符有:
and
(与)、
or
(或)、
not
(非)。

(1)对于
and
,当第一个操作数为假时,返回第一个操作数,否则返回第二个操作数。

(2)对于
or
,当第一个操作数为真时,返回第一个操作数,否则返回第二个操作数。

x = x or v; // 如果x不为nil或不为false就返回x,否则返回v;


4.字符串连接操作符

字符串连接操作符
..
用来连接两个字符串,当后一个为他类型时会转为字符串,例如:

print("Hello"..520); // 输出为Hello520
// 以上是先将520转化为字符串,然后再与字符串"Hello"做连接操作


5.table构造式

构造式是用来创建和初始化table表达式的,是Lua中特有的一种表达式。构造式如下:

t = {}; // 最简单的构造式
a = {x = 10,y = 20};// 具有初始化记录风格的table构造式


在构造一个table的时候,如果不给table一个key,那么默认的key值就是从1开始的,例如:

// 1.相关于星期的table
t = {"Monday","Tuesday","Wndnesday","Thursday","Friday","Saturday","Sunday"};
// 等价于C++/C中的数组
t = {};
t[1] = "Monday",
t[2] = "Tuesday",
t[3] = "Saturday",
...
t[7] = "Sunday"

// 2.包含不用类型key值的table
t = {
name = "美女",
age = 18,
"美女背后的男人1",
"美女背后的男人2"
};
// 等价于C++中的结构体赋值
t = {};
t.name = "美女";
t.age = 18;
t[1] = "美女背后的男人1";
t[2] = "美女背后的男人2";

// 注意:删除一个table的元素,只需要给它赋值为nil就可以了,例:
t[1] = nil;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: