Что означает «<<» в «1000 << 16» в рубине? - PullRequest
1 голос
/ 07 июня 2011

Что означает «<<» в «1000 << 16» в рубине? </p>

Я знаю, что для строк << можно использовать для конкатенации, но я не понимаю, для чего это нужноint s.Может кто-нибудь объяснить, пожалуйста?

Ответы [ 3 ]

8 голосов
/ 07 июня 2011
3 голосов
/ 07 июня 2011

Что нужно сделать, это взять двоичное представление тысячи и сдвинуть биты в шестнадцать оставленных пробелов.По сути, это умножает число на 65 536.

2 голосов
/ 07 июня 2011

Вы можете найти его в RDoc: http://www.ruby -doc.org / core / classes / Fixnum.html # M001102

fix << count → integer </p>

Сдвиги фиксируют левые позиции счета (вправо, если счет отрицательный).

...