在 ruby 中,我习惯于以这种方式打印变量:
x = "anything"
print x
但是我见过的许多教程都是这样做的:
x = "anything"
print "#{x}"
那么有什么区别以及我们为什么要使用它。
在 ruby 中,我习惯于以这种方式打印变量:
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