“为什么?”;不是零”;在Lua中返回true?
我使用repl.it来查看它返回了什么,只是出于好奇,结果是“为什么?”;不是零”;在Lua中返回true?,lua,boolean-logic,Lua,Boolean Logic,我使用repl.it来查看它返回了什么,只是出于好奇,结果是 非零 返回true 为什么?是因为在Lua中,一切最终都应该是真的还是假的 Repl.it链接:因为nil在转换为布尔值时为false: 2.2布尔值 布尔类型有两个值,false和true,它们表示传统的布尔值。然而,布尔人没有 垄断条件值:在Lua中,任何值都可以代表 条件条件句(如控制结构中的条件句) 同时考虑 false 和 NIL >代码> false 和其他任何作为真< /代码>。 请注意,与其他一些脚本语言不同,Lua认
非零
返回true
为什么?是因为在Lua中,一切最终都应该是真的还是假的
Repl.it链接:因为
nil
在转换为布尔值时为false
:
2.2布尔值
布尔类型有两个值,false
和true
,它们表示传统的布尔值。然而,布尔人没有
垄断条件值:在Lua中,任何值都可以代表
条件条件句(如控制结构中的条件句)
同时考虑<代码> false 和<代码> NIL<代码> >代码> false 和其他任何作为<代码>真< /代码>。
请注意,与其他一些脚本语言不同,Lua认为这两种语言都是零
在条件测试中,空字符串为true
而not
将其参数视为布尔值:
3.3逻辑运算符
逻辑运算符是和
,或
,以及非
。与控制结构一样,所有逻辑运算符都考虑<代码> false <代码>和<代码> nIL/COD>
如false
,其他如true
您希望表达式
而不是nil
的结果等于什么?