Elixir - 位运算符



位运算符作用于位并执行逐位运算。Elixir 提供了作为 Bitwise 包一部分的位运算模块,因此要使用它们,您需要 使用 位运算模块。要使用它,请在您的 shell 中输入以下命令:

use Bitwise

在以下示例中,假设 A 为 5,B 为 6:

运算符 描述 示例
&&& 按位与运算符将位复制到结果中,如果它存在于两个操作数中。 A &&& B 将得到 4
||| 按位或运算符将位复制到结果中,如果它存在于任一操作数中。 A ||| B 将得到 7
>>> 按位右移运算符将第一个操作数的位向右移动第二个操作数中指定的位数。 A >>> B 将得到 0
<<< 按位左移运算符将第一个操作数的位向左移动第二个操作数中指定的位数。 A <<< B 将得到 320
^^^ 按位异或运算符仅当两个操作数上的位不同时才将位复制到结果中。 A ^^^ B 将得到 3
~~~ 一元按位非运算符反转给定数字上的位。 ~~~A 将得到 -6

示例

尝试以下代码以了解 Elixir 中的所有算术运算符。

a = 5
b = 6

use Bitwise

IO.puts("a &&& b " <> to_string(a &&& b))

IO.puts("a ||| b " <> to_string(a ||| b))

IO.puts("a >>> b " <> to_string(a >>> b))

IO.puts("a <<< b" <> to_string(a <<< b))

IO.puts("a ^^^ b " <> to_string(a ^^^ b))

IO.puts("~~~a " <> to_string(~~~a))

以上程序生成以下结果:

a &&& b 4
a ||| b 7
a >>> b 0
a <<< b 320
a ^^^ b 3
~~~a -6
elixir_operators.htm
广告