只是想知道是否有人有任何真实世界的示例或知道何时可以在 Ruby 中使用 NOT、AND、OR、XOR、<<、>> 运算符。
我已经编程了 4 年,从来没有遇到过需要使用其中的任何一个,想知道实际用法有多普遍以及我是否应该完全理解它。
谢谢,-J
xor
(aka ^
), <<
, 和>>
更常用于低级编程。AC 程序员将非常熟悉这些功能。我目前正在用 Ruby 编写一个模拟器,<<
并且>>
经常在 6502 内核中使用,因为它具有 1 字节字长但 2 字节 pc 之类的东西。例如,您需要进行位移以将 pc 保存到堆栈中。
not
、and
和分别是、和or
的变体。它们的工作方式相同,但对它们周围的变量有一个“更宽松的绑定”。它们的用途(至少在实践中)是允许用更少的括号编写表达式。我相信 Rails 实际上完全禁止在自己的代码库中使用这些运算符,因为对它们的工作方式存在误解。!
&&
||
在另一个问题的答案中,我被迫做一些小事来解决String#unpack
/Array#pack
对 API 中缺少的功能。它使用左移 ( <<
) 和按位或 ( |
)。