lua中的逻辑运算只有:and or not
not的结果总是只返回true或false,例如
local a=10
print(not a) 打印的结果是 false
local b=nil 或者 local b=false
print(not b) 打印的结果是true
and和or支持短路运算规则,只是运算结果不是true或false,而是运算符左右两边的值,也就是说结果是最后一次进行判断的那个值,例如
print(10 and 20) --结果为20,因为10为真,and会继续计算后面的20
print(nil and 20) --结果为nil,因为nil为假,and提前结束运算
print(10 or 20) --结果为10,因为10为真,or提前结束运算
print(nil or 20) --结果为20,因为nil为假,or会继续运算
Lua语言的逻辑运算符包括and、or和not。not运算的结果仅为true或false,如not10返回false,notnil或notfalse返回true。and和or支持短路运算,它们的结果是最后一个进行判断的值,例如10and20返回20,nilor20返回20。
5746

被折叠的 条评论
为什么被折叠?



