【Ruby3.x】Integer::&()メソッドの使い方
&メソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
&メソッドは、整数同士のビット単位の論理積(AND)を計算するメソッドです。Integerクラスに属しており、数値オブジェクトに対して使用されます。
このメソッドは、呼び出し元の整数と引数として渡された別の整数を、それぞれの2進数表現で比較し、ビットごとのAND演算を実行します。具体的には、それぞれの桁(ビット)において、両方のビットが1である場合にのみ、結果の対応するビットを1とします。どちらか一方のビットが0であるか、両方のビットが0である場合には、結果のビットは0となります。
引数には、もう一つのInteger型の数値を指定します。戻り値は、計算結果として得られる新しいInteger型の数値です。例えば、数値5(2進数で0101)に対して&メソッドを使い、引数に3(2進数で0011)を指定した場合、結果は1(2進数で0001)となります。これは、右端のビットのみ両方が1であるためです。
このビット単位のAND演算は、特定のビットが設定されているかを確認したり、複数のフラグが同時に立っているかを調べたり、ビットマスクを使用して数値から特定の部分を抽出したりするような、下位レベルのデータ操作によく利用されます。システム内部でのフラグ管理や、効率的なデータ処理が必要な場面で活用されます。
構文(syntax)
15 & 3
引数(parameters)
req
- integer: ビット演算を行うもう一方の整数
戻り値(return)
Integer
Integerクラスの&メソッドは、レシーバの整数と引数で与えられた整数のビットごとの論理積(AND)演算を行った結果をInteger型で返します。