lua脚本max = and x or y怎么理解

2024-12-02 04:27:46
推荐回答(2个)
回答1:

这句语法是错误的。and前必须有一个条件。and和or的混合使用类似C语言的三目运算符。
比如C语言的 max = a > 0 ? x : y;
对应的Lua就是 max = a > 0 and x or y;

需要补充一句的是,max = a and x or y;这也是成立的,等价于
max = (a ~= nil and a ~= false) and x or y;

回答2:

and是双目运算符