概要
Rubyで使用する標準出力について、「''」または「""」で書いた時の挙動の違いをまとめました。
pメソッド
- 「''」で書いた場合
p 'foo', 'bar', 'baz'
# 結果
"foo"
"bar"
"baz"
- 「""」で書いた場合
p "foo", "bar", "baz"
# 結果
"foo"
"bar"
"baz"
putsメソッド
- 「''」で書いた場合
puts('foo, bar, baz')
# 結果
foo, bar, baz
- 「""」で書いた場合
puts("foo, bar, baz")
# 結果
foo, bar, baz
printメソッド
- 「''」で書いた場合
print('foo\nbar\nbaz')
# 結果
foo\nbar\nbaz
- 「""」で書いた場合
print("foo\nbar\nbaz")
# 結果
foo
bar
baz
まとめ
- p, putsメソッドは「''」、「""」に限らず結果は変わらない
- pメソッドは「""」で結果が表示され、puts,printメソッドは何も囲まれず表示される
- printメソッドは「''」の場合は改行コードは無視される