「print」「puts」「p」3つのメソッドについてまとめてみる
主な違い
-
改行するかしないか
-
オブジェクトの情報も出力するか
-
「puts」と「p」は出力した後に改行するのですが、「print」は改行しない。
-
「puts」と「p」はいずれも改行するが、「p」メソッドはオブジェクトの情報も出力する。
printメソッド
- 引数を順番に出力する
- 改行をしない
- 文字列以外のオブジェクトは、to_s メソッドによって文字列に変換される
- 改行を入れる場合は改行文字(\n)を付ける
- 戻り値はnil
putsメソッド
- 引数を順番に出力する
- 改行をする
- 文字列以外のオブジェクトは、to_s メソッドによって文字列に変換される
- 配列の場合は要素を順番に出力する
- 戻り値はnil
pメソッド
- 引数を順番に出力する
- 改行をする
- オブジェクトを見やすいように出力する
- \nや\tなどのエスケープ文字もそのまま出力する
- 戻り値は引数で配列で返す
- 主にデバッグで使用される
まとめ
- 「print」は、引数を文字列にして出力し、改行をいれない
- 「puts」は、引数を文字列にして出力し、改行をいれる
- 「p」は、改行をいれる。デバッグでよく使用する。