【发布时间】:2018-06-02 08:47:23
【问题描述】:
字符串插值在这种情况下可以正常工作:
val name = "Bill"
val result = s"My Name is ${name}"
当我将它引入变量时,它没有得到内插值:
val name = "Bill"
val greeting = "My Name is ${name}"
val result = s"${greeting}"
greeting 的直接包装不是合适的解决方案,我必须像普通字符串一样处理问候语。
【问题讨论】:
-
插值
greeting没有意义,因为它已经是一个字符串 -
@pacman 有什么问题?
-
你想要一个函数
(name: String) => s"My Name is ${name}"吗?或者您是否希望name在您调用s"${greeting}"时动态绑定到名为 name 的任何变量?提示:无论哪种方式都可以使用该功能。它远不那么令人困惑。 -
人们所说的他们想要的东西、人们真正想要的东西和人们需要的东西之间往往存在差异。
-
我认为这是一个结构良好的问题。很明显
result的预期是什么,不关心greeting的类型是可以的,就像用户不关心s"$greeting"的实际作用一样。
标签: scala string-interpolation