ruby - ruby 字符串中的 #{} 究竟做了什么?

标签 ruby string

正如问题所问,它只是在嵌入表达式的返回值上调用 to_s 吗?

像这样?

"1, 2, #{1 + 2}" == "1, 2, " + 3.to_s

还是这里发生了更多事情?

最佳答案

是的,它在表达式的结果上调用 to_s。试试吧。

:001> class Monkey
:002>   def to_s
:003>     "monkey"
:004>     end
:005>   end
 => nil 
:006> m = Monkey.new
 => monkey
:007> "I am a #{m}"
 => "I am a monkey" 

关于ruby - ruby 字符串中的 #{} 究竟做了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11955792/

相关文章:

mysql - 浏览器显示 MySQL 错误,我没有列

string - C++ 将 int 转换为字符串

c# - 如何使用字符串作为索引?

ios - xcode 通过 ruby​​ gem xcodeproj 更改代码签名身份

arrays - 试图从数组中求和

ruby - 在 Ruby 中处理非英文字符的最佳实践?

python - 如何将元组列表的字符串转换为 Python 元组列表

c - 二维指针数组到二维数组

c - 在 C 中使用 fscanf 扫描字符串

ruby-on-rails - 在没有模型的情况下访问 ActiveRecord 关联