Scala 为咱们提供了三种字符串插值的方式,分别是 s, f 和 raw。它们都是定义在 StringContext 中的方法。java
val a = 2
println(s"小明今年$a 岁了")数组
它除 s 的功能外(不指定格式就和 s 同样),还能进行格式化输出,在变量后用 % 指定输出格式,格式的说明参照 Java 的 Formatter javadoc。实际调用的是 StringContext 中的 f 方法。spa
val as = Array(0, 1) for(i <- as.indices) println(f"第${i}个元素是${as(i)}%3d")
能够看到,数组缓冲中的值以前多了两个位置。3d
raw 能让字符串原本来本的输出来,而不是产生控制效果,如对 \n ,\t 等的输出。实际调用的是 StringContext 中的 raw 方法。code
println("a\tb\tc") 结果:a b corm
println(raw"a\tb\tc") 结果:a\tb\tcblog