15

我想知道,这两者之间有什么区别:

val a = 123
println(f"hello1 $a") // 1                         
println(s"hello1 $a") // 2
4

2 回答 2

18

根据文档f插值是类型安全的。此外,它允许在参数之后添加格式,这是s插值不支持的。

于 2013-11-14T16:12:15.143 回答
10

插值器s允许您插入变量或表达式,而f插值器允许您使用格式化命令,à la C printf

请注意,与 Cprintf或 Java不同String.formatf插值器将为您检查参数。这个链接有更多信息。

于 2013-11-14T16:11:31.360 回答