Ruby 2.4.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Integerクラス > []

instance method Integer#[]

self[nth] -> Integer[permalink][rdoc]

nth 番目のビット(最下位ビット(LSB)が 0 番目)が立っている時 1 を、そうでなければ 0 を返します。

[PARAM] nth:
何ビット目を指すかの数値
[RETURN]
1 か 0

self[nth]=bit (つまりビットの修正) がないのは、Numeric 関連クラスが immutable であるためです。

例:

a = 0b11001100101010
30.downto(0) do |n| print a[n] end
# => 0000000000000000011001100101010

a = 9**15
50.downto(0) do |n|
  print a[n]
end
# => 000101110110100000111000011110010100111100010111001