2015-03-31 83 views
0

請有人向我解釋一些奇怪的Swift語法,我試着谷歌它並檢查蘋果的文檔,但沒有找到任何使用它的例子。 所以這裏是我試圖遵循的教程中的一些代碼。我不明白<<是什麼意思。<<在Swift語言中意味着什麼?

這絕對不是一兩次小於或如此:) 請解釋,我很好奇吧:)

+2

這是位移位的運算符。 – SLaks 2015-03-31 17:22:03

+0

@SLaks相當快 – 2015-03-31 17:23:42

回答

5

這是「位移」操作符。

也許蘋果文檔(goo.gl/DXVBJD)開頭太複雜了。

但是,其基本思想是,初始位(1)表示爲:00000000000000000000000000000001

如果從一個位接班,即使用這種語法0b10或這一個爲0x1 < < 1位去一個地方向左:00000000000000000000000000000010.您可以使用0b100時或爲0x1兩個地轉向它< < 2,依此類推......

下面是我爲another question做了一桌,可以幫助你太: http://goo.gl/7D8EGY

+0

@Ichamp感謝您的迴應!我會試着去理解使用位移算符的方式,因爲現在我不明白我應該使用它的原因。這可能聽起來有點不方便,但我是一個非常初學者。 – pulp 2015-03-31 20:18:36

+0

一個常見的使用位的地方是遊戲開發中的碰撞/接觸位掩碼。它很方便,因爲你可以很容易地添加它們,例如:... 00001 + ... 00100會給你... 00101。關於移位運算符本身,在這裏很有用,因爲您可以輕鬆地編寫該值(如上面鏈接的其他問題所示)。 _它可能在其他情況下使用,但我現在沒有其他任何其他情況。無論如何,很高興它幫助你:) – lchamp 2015-03-31 20:27:44

1

瞭解更多關於它的信息。現有的位向左移動所需的位數。在這種情況下,0意味着它不會改變,所以它什麼也不做。

相關問題