字符串插值available in Scala开始的Scala 2.10斯卡拉2.10中的字符串插值 - 如何内插一个字符串变量?
这是基本的例子
val name = "World" //> name : String = World
val message = s"Hello $name" //> message : String = Hello World
我想知道如果有一种方法可以做到动态插值,例如以下(不编译,只是为了演示)
val name = "World" //> name : String = World
val template = "Hello $name" //> template : String = Hello $name
//just for illustration:
val message = s(template) //> doesn't compile (not found: value s)
有没有办法为“动态”评估像这样的字符串? (或者它本身是错误的/不可能的)
究竟是什么
s
?它不是一个方法高清(apparently it is a method onStringContext
),而不是一个对象(如果是,它会抛出比不同的编译错误没有发现我认为)
一个小小的另外一个可能的解决方案#1在原来的问题的情况下。不仅可以使用标识符。任何有效的scala表达式都可以放在$ {}之间。 – pedrofurla