LoginSignup
2
1

More than 3 years have passed since last update.

puts, print, pメソッド

Last updated at Posted at 2020-05-10

ターミナルへの出力で多用される、puts, print, pメソッドのちがいについて、あやふやなところがあったので、
ここでそれぞれのちがいをまとめておきます。

メソッド 出力後の改行 配列の表示 呼び出すメソッド 戻り値
puts あり 要素ごとに改行 to_s nil
print なし 改行しない to_s nil
p あり 改行しない inspect 引数のオブジェクト

putsメソッド

putsメソッドは改行を加えて、変数の内容やメソッドの戻り値をターミナルに出力します。
putsメソッド自身の戻り値はnilになります。

irb(main):001:0> puts 123
123
=> nil

irb(main):002:0> a = [1, 2, 3]
=> [1, 2, 3]

irb(main):003:0> puts a
1
2
3
=> nil

printメソッド

printメソッドは、改行を加えません。

irb(main):004:0> print 123
123=> nil

pメソッド

改行を加えて出力します。文字列を出力すると、その文字列がダブルクォーテーションで囲まれます。
また、引数で渡されたオブジェクトそのものがメソッドの戻り値になります。

irb(main):005:0> p 'abc'
"abc"
=> "abc"

irb(main):006:0> a = [1, 2, 3]
[1, 2, 3]
=> [1, 2, 3]

参考にした文献

プロを目指す人のためのRuby入門

2
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1