<< 在 Swift 语言中是什么意思?
What does << mean in Swift language?
请有人向我解释一些奇怪的 Swift 语法,我尝试 google 它并检查了 Apple 的文档,但没有找到任何使用它的示例。
所以这是我试图遵循的教程中的一些代码。
let FSBoundaryCategory: UInt32 = 1 << 0
我不明白<<
是什么意思。
绝对不会少两倍左右:)
请解释一下,我对此很好奇:)
这是一个左移运算符。您可以在 Apple Docs here
阅读更多相关信息
现有位向左移动请求的位数。在这种情况下,0 表示它不会改变,所以它什么都不做。
这是 "bit shifting" 运算符。
也许 apple 文档 (goo.gl/DXVBJD) 太复杂了,无法入手。
但是,基本思想是初始位 (1) 表示为:00000000000000000000000000000001
如果使用语法 0b10 或语法 0x1 << 1 从一位开始移位,则该位向左移动一位:00000000000000000000000000000010。您可以使用 0b100 或 0x1 << 2 从两位开始移位等等...
这是我为 制作的 table,可能对您也有帮助:
http://goo.gl/7D8EGY
请有人向我解释一些奇怪的 Swift 语法,我尝试 google 它并检查了 Apple 的文档,但没有找到任何使用它的示例。
所以这是我试图遵循的教程中的一些代码。
let FSBoundaryCategory: UInt32 = 1 << 0
我不明白<<
是什么意思。
绝对不会少两倍左右:) 请解释一下,我对此很好奇:)
这是一个左移运算符。您可以在 Apple Docs here
阅读更多相关信息现有位向左移动请求的位数。在这种情况下,0 表示它不会改变,所以它什么都不做。
这是 "bit shifting" 运算符。
也许 apple 文档 (goo.gl/DXVBJD) 太复杂了,无法入手。
但是,基本思想是初始位 (1) 表示为:00000000000000000000000000000001
如果使用语法 0b10 或语法 0x1 << 1 从一位开始移位,则该位向左移动一位:00000000000000000000000000000010。您可以使用 0b100 或 0x1 << 2 从两位开始移位等等...
这是我为