はじめに
今回の記事は過去に「プロを目指す人のためのRuby入門」を読んで、勉強になった・意識していなかった
部分を備忘録的にまとめています。
puts
print
p
pp
のメソッドについてどれも出力に使用するものですが、
どれも挙動が少し違います
それで、puts / print / p / pp の違いは何なの?
結論
メソッド | 出力後の改行 | 配列の表示 | 呼び出すメソッド | 戻り値 | 対象者 |
---|---|---|---|---|---|
puts | あり | 要素ごとに改行 | to_s | nil | 一般ユーザ |
なし | 改行しない | to_s | nil | 一般ユーザ | |
p | あり | 改行しない | inspect | 引数のオブジェクト | 開発者 |
pp | あり | 見やすく整形 | inspect | 引数のオブジェクト | 開発者 |
挙動として、上記の図のようになります!
因みに pp
の見やすく整形は配列だけではなく、ハッシュ等の大きく複雑なものも見やすく整形されます。
まとめ
Rubyを触ったばかりの時は自分も、あまり意識せずに出力することが多々ありました。
使い分けとしては、puts
は改行したい時に使用して、print
は改行せずに出力する際に使用します。
また、p
はオブジェクトの内容をそのまま出力する際に使用し、pp
はより詳細な情報(インデントや改行)も含めて表示したい場合に使用します。
今回の記事が参考になれば幸いです。
参照