Scala在字符串文字中使用表达式

示例

您可以使用花括号将表达式插入字符串文字中:

def f(x: String) = x + x
val a = "A"

s"${a}"    // "A"
s"${f(a)}" // "AA"


如果不使用大括号,scala只会在后面插入标识符$(在这种情况下f)。由于没有从f到的隐式转换,String因此在此示例中是一个例外:

s"$f(a)"  // 编译时错误(缺少方法f的参数列表)