Что означает «<<» в «1000 << 16» в рубине? </p>
Я знаю, что для строк << можно использовать для конкатенации, но я не понимаю, для чего это нужноint s.Может кто-нибудь объяснить, пожалуйста?
<<
int
Это битовый оператор смещения влево .
Что нужно сделать, это взять двоичное представление тысячи и сдвинуть биты в шестнадцать оставленных пробелов.По сути, это умножает число на 65 536.
Вы можете найти его в RDoc: http://www.ruby -doc.org / core / classes / Fixnum.html # M001102
fix << count → integer </p> Сдвиги фиксируют левые позиции счета (вправо, если счет отрицательный).
fix << count → integer </p>
Сдвиги фиксируют левые позиции счета (вправо, если счет отрицательный).