var = 5
puts "Method #1: #{var}"
puts "Method #2: %d" % var
I'm looking for advantages and drawbacks with each method, if there are at all.
var = 5
puts "Method #1: #{var}"
puts "Method #2: %d" % var
I'm looking for advantages and drawbacks with each method, if there are at all.
第一个是简单的字符串插值,而第二个是Kernel#sprintf的语法糖。
将第一个用于只需要生成包含变量数据的字符串的情况。当您需要进行专门的格式化时,第二个更好,而不仅仅是将变量放入字符串中。第一个将具有更好的性能,因此除非您需要专门的格式,否则请这样做。
而且它出现的情况下,"hello #{var}"
比"hello " + var
.