【Ruby3.x】IO::<<()メソッドの使い方
<<メソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
<<メソッドは、指定された文字列やオブジェクトをIOストリームへ出力するメソッドです。具体的には、ファイルや標準出力(ターミナルなど)といった出力先に対し、内容を書き込む際に利用されます。
このメソッドは、引数として受け取ったオブジェクトを、内部でto_sメソッドを呼び出して文字列に変換し、その後IOストリームに書き出します。そのため、文字列だけでなく、数値や配列など、to_sメソッドを持つあらゆるオブジェクトを簡単に出力できます。
特徴として、<<メソッドは書き込みを行った後もIOオブジェクト自身を返します。この挙動により、複数の<<メソッドを続けて呼び出す「メソッドチェーン」が可能となり、一行で複数の情報を連続して出力する記述ができます。例えば、ファイルオブジェクト << "Hello" << "World" のように使用できます。
ただし、putsメソッドとは異なり、自動的に改行を追加することはありません。改行が必要な場合は、明示的に"\n"などの改行文字を含める必要があります。この特性により、出力内容をより細かく制御し、自由な形式でデータを書き出したい場合に非常に便利です。ファイルへのデータ書き込みや、$stdoutやSTDOUTといった標準出力オブジェクトを通じてコンソールにメッセージを表示する際によく利用されます。
構文(syntax)
1$stdout << "Hello, Ruby!\n"
引数(parameters)
obj
- obj: << メソッドに渡されるオブジェクト。IO ストリームに書き込まれます。
戻り値(return)
self
このメソッドは、レシーバーであるIOオブジェクト自身を返します。