puts
- オブジェクト出力後に改行して、メソッドの戻り値を出力する
- putsメソッドの戻り値は「
nil
」になる - 配列を渡した場合、要素ごとに改行して出力する
- 文字列以外のオブジェクトは、to_sメソッドによって文字列に変換される
> puts 123
123
=> nil
> puts 'foo'
foo
=> nil
> puts "foo\nbar"
foo
bar
=> nil
> puts [1, 2, 3]
1
2
3
=> nil
- オブジェクト出力後に改行されない
- printメソッドの戻り値は「
nil
」になる - 配列を渡した場合、配列をそのまま出力する
- 文字列以外のオブジェクトは、to_sメソッドによって文字列に変換される
> print 123
123=> nil
> print 'foo'
foo=> nil
> print "foo\nbar"
foo
bar=> nil
> print [1, 2, 3]
[1, 2, 3]=> nil
p
- putsメソッドと同じようにオブジェクト出力後に改行する
- 文字列を出力すると、ダブルクォーテーション(
""
)で囲んで出力する - 渡されたオブジェクトそのものがメソッドの戻り値になる。
- 改行文字(
\n
)をそのまま出力する(改行されない)
- 改行文字(
- 配列を渡した場合、配列をそのまま出力する
- 文字列以外のオブジェクトは、inspectメソッドによって文字列に変換される
> p 123
123
=> 123
> p 'foo'
"foo"
=> "foo"
> p "foo\nbar"
"foo\nbar"
=> "foo\nbar"
> p [1, 2, 3]
[1, 2, 3]
=> [1, 2, 3]
参考