Lua 数据类型 —— boolean

一、boolean 定义

lua 中只有 false 和 nil 表示假,其他都是表示真。

数字 0 和空字符串也表示真。

二、逻辑运算:and、or、not

and:如果第一个操作数为 “false” , 则返回第一个操作数
Lua 数据类型 —— boolean_第1张图片
or:如果第一个操作数不为 “false” ,则返回第一个操作数,否则返回第二个操作数
Lua 数据类型 —— boolean_第2张图片
not:永远只返回 boolean 类型值

print(4 and 5)          --> 5
print(nil and 13)       --> nil
print(false and 13)     --> false
print(0 or 5)           --> 0
print(false or "hi")    --> hi
print(nil or false)     --> false

三、巧妙用法

第一种:x = x or v 的作用就是如果 x 未被初始化,则将 v 赋值给 x ,等效如下代码。这里需要知道 x 不是 Boolean 类型的 false

if not x then x = v then 

第二种:((a and b) or c) 或 (a and b or c),等效于三木运算符 a ? b : c这里需要知道 b 不为 Boolean 类型 false

可以用以下表达式进行求两个值的最大值

(x > y) and x or y

四、写在最后

Lua 项目地址:Github传送门 (如果对你有所帮助或喜欢的话,赏个star吧,码字不易,请多多支持)

公众号搜索 “江澎涌” 可以更快的获取到后续的更新文章

你可能感兴趣的:(Lua,lua,开发语言,c++,android,c语言)