逻辑运算和关系运算

本章介绍逻辑运算和关系运算。这两类运算都有两个应用场景:条件判断和求值。比如下面的代码:

-- 逻辑运算
if a and b then      -- 条件判断
    print(t.k or 0)  -- 求值
end
-- 关系运算
if a > b then     -- 条件判断
    print(c > d)  -- 求值
end
-- 逻辑运算和关系运算结合
if a > b and c < d then        -- 条件判断
    print (x > 0 and x or -x)  -- 求值
end

这两个场景下的解析方式略有差别。一般说来,条件判断出现的情况明显多于求值,所以本章在介绍这两类运算时,都是先介绍在条件判断场景下的解析,并针对其进行优化;然后再完成求值场景。

条件判断的场景是源于上一章的控制结构,这也是在第5章数值运算后没有立即介绍这两类运算,而必须在控制结构之后才介绍的原因。