- 教程
- 概述
- 环境
- Basic 语法
- 数据类型
- 变量
- 运算符
- 模式匹配( Pattern Matching)
- 决策( Decision Making)
- Strings( Strings)
- Char Lists( Char Lists)
- 列表和元组( Lists and Tuples)
- 关键字列表( Keyword Lists)
- Maps
- 模块( Modules)
- 别名( Aliases)
- 功能( Functions)
- 递归
- 循环
- Enumerables( Enumerables)
- Streams( Streams)
- Structs( Structs)
- 协议 Protocols
- File I/O
- 进程( Processes)
- Sigils( Sigils)
- 理解( Comprehensions)
- Typespecs( Typespecs)
- 行为( Behaviours)
- 错误处理( Errors Handling)
- Macros( Macros)
- (库)Libraries
- 有用的资源
- 讨论
- Show 例子
- Show 例子
- Show 例子
- Show 例子
- Show 例子
- if statement
- if..else statement
- unless statement
- unless..else statement
- cond
- case
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
Show 例子
按位运算符处理位并执行逐位操作。 Elixir提供按位模块作为Bitwise包的一部分,因此为了使用这些模块,您需要use按位模块。 要使用它,请在shell中输入以下命令 -
use Bitwise
对于以下示例,假设A为5,B为6:
操作者 | 描述 | 例 |
---|---|---|
&&& | 如果两个操作数中都存在Bitwise和运算符,则会将其复制到结果中。 | A &&& B将给出4 |
||| | 如果在任一操作数中存在,则按位或运算符将一个位复制到结果。 | A ||| B会给7 |
>>> | 按位右移运算符将第一个操作数位向右移动第二个操作数中指定的数字。 | A >>> B将给出0 |
<<< | 按位左移位运算符将第一个操作数位向左移动第二个操作数中指定的数字。 | A <<< B将给出320 |
^^^ | 只有在两个操作数上它们不同时,按位XOR运算符才会将某个位复制到结果中。 | A ^^^ B将给出3 |
~~~ | 一元按位不反转给定数字上的位。 | ~~~ A会给-6 |
例子 (Example)
请尝试以下代码来了解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
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论