lua学习笔记(四)
表达式
算术操作符
+(加法) -(减法) *(乘法) /(除法) ^(指数) %(取模) -(负号)
x%1的结果是x的小数部分,x-x%1是整数部分
关系操作符
< > <= >= == ~=
的有操作符的运算结果都是true或false
nil仅与nil相等
不等于与c不一样,不是!=
a={} a.x=1 a.y=0
b={} b.x=1 b.y=0
c = a
assert( a==c )
assert( a~=b )
table userdata function仅做引用比较,引用的是一个就一样
逻辑操作符
and
a and b
第一个为false返回第一个值,不然返回第二个值
or
a or b
第一个为true返回第一个值,不然返回第二个值
(a and b) or c 相当于c中的a?b:c 但b不为假,太抽象慎用
not
assert(not "wangning" == false)
assert(not nil == true)
只会返回true或false
优先级
^
not # -(负号)
* / %
+ -
..
< > <= >= ~= ==
and
or