Skip to Content

布尔(Bool)

bool 只有两个值,打印出来是 True 和 False(大写开头)。

val on = true; print(on, false); print(1 < 2, 3 == 4);
True False True False

运算面

  • 判等:== / != 按值比较,是 bool 上唯一的比较面,不允许大小比较。

  • 位逻辑不可用:& | ^ 不收 bool,逻辑组合只有 && || !,支持短路求值:false && Side() 不会执行 Side()(详见运算符)。

bool 是条件位置的唯一合法类型。数字不会「非零即真」,字符串不会「非空即真」,条件必须显式写出(详见条件):

error MS3101: Type mismatch: expected 'bool', got 'int32'.

转换

  • int(true) 得 1、int(false) 得 0,float / float32 / float64 同理(float(true) 即 1.0),bool 到数值的显式转换合法。
  • 反方向不存在:bool(1) 报 MS3249,诊断直接给出惯用改写 x != 0。

注意

  • 插值和 print 都直接输出 True / False。
  • bool 的判等与全语言二分的关系,见判等与哈希。
最后更新于 2026年10月7日