《Lua程序设计》-1.Lua入门

2019-06-23  本文已影响0人  祝你万事顺利

1.4.2Boolean

v = 10
x  = nil
if not x then x = v end
print(x);

输出: 10

v = 10
x  = 4
if not x then x = v end
print(x);

输出: 4

逻辑运算符:and、or和not
and运算结果:如果第一个操作数为“false”,则返回第一个数,否则返回第二个
or运算结果:如果第一个操作数不为“false”,返回第一个,否则返回第二个

print(nil and 10);
print(false and 20);
print(10 and "asdf");
print(false or "as");

输出:nil
false
asdf
as

另一种表达式:(a and b or c )
在b 不等于 false是等价于三元表达式a?b:c

例如:
print((a > b) and a or b)
可以得到ab中较大的一个,在a大于b时为true返回a,在a小于b的时候为false与or运算得到b

not运算符永远返回boolean类型的值

print(not nil);
print(not "ass");

输出:
true
false

上一篇下一篇

猜你喜欢

热点阅读