键盘快捷键

使用 跳转章节

使用 S/ 在本书内搜索

使用 ? 显示帮助页面

使用 Esc 隐藏帮助页面

Band

Band[x, y]

计算两个整数的按位与。

Band[12, 10]; # => 8

Block

Block[expr1, expr2, ...]

在一个隔离作用域中按顺序执行一系列表达式,返回最后一个表达式的值。未传入任何参数时返回 Unit[]。最末参数后允许保留逗号。

Block 内部通过 Let 创建或覆盖的变量严格局限于该块,不会影响外层环境。

Let[x, 2];
Print[x]; # 2

Block[
  Let[x, 10],
  Print[x] # 10
];
Print[x]; # 2

Block 与列表的区别

列表字面量中的表达式在当前作用域求值,其中通过 Let 产生的变量绑定会逃逸到列表外部。Block 则创建隔离作用域,内部绑定不影响外层。

Let[a, 0];

Print[{ Let[b, 10], Let[a, Add[b, b]] }]; # {(), ()}
Print[{ a, b }];                          # {20, 10}

Bor

Bor[x, y]

计算两个整数的按位或。

Bor[12, 10]; # => 14

Bxor

Bxor[x, y]

计算两个整数的按位异或。

Bxor[12, 10]; # => 6