ルビーでは、私は次のように変数を出力するために使用されます。
x = "anything"
print x
しかし、私が見た多くのチュートリアルはこのようにそれを行います:
x = "anything"
print "#{x}"
では、違いは何ですか、なぜそれを使用するのですか?
ルビーでは、私は次のように変数を出力するために使用されます。
x = "anything"
print x
しかし、私が見た多くのチュートリアルはこのようにそれを行います:
x = "anything"
print "#{x}"
では、違いは何ですか、なぜそれを使用するのですか?
これは文字列補間と呼ばれます。詳細については、このリンクをたどってください。
基本的に、文字列テンプレートと変数を一緒に作成する場合に便利な方法です。
#{X}
構文は文字列補間を使用しています。これは、の間の式を評価することを意味し#{}
ます。これは、次のように、文字列に変数と固定部分の両方を含める場合に非常に便利です。
result = "19"
p "The result is #{result}"
これは一重引用符ではなく、二重引用符でのみ機能することに注意してください。
以下のコードは、の使用法をすばやく理解できることを願っていますprint "#{}"
。
print class X;def show;p "hi";end;end;X.new.show
"hi"
#=> "hi"
print "#{class X;def show;p "hi";end;end;X.new.show}"
#"hi"
#hi=> nil