scala> util.Properties.versionString
res11: String = version 2.11.2
scala> val a = ""
a: String = ""
scala> val a = "\""
a: String = "
Run Code Online (Sandbox Code Playgroud)
到现在为止还挺好.现在使用字符串插值,它会失败:
scala> val a = s"\""
<console>:1: error: unclosed string literal
val a = s"\""
^
Run Code Online (Sandbox Code Playgroud)
即使我们提供结束转义报价.
scala> val a = s"\"\""
<console>:7: error: value \ is not a member of String
val a = s"\"\""
^
Run Code Online (Sandbox Code Playgroud)
为什么会这样?
Sha*_*nds 11
这似乎是一个已知的错误.
请注意,您可以使用三引号来解决此问题,至少在上述情况下:
scala> val a = s"""""""" // seven quote characters all up!
a: String = "
Run Code Online (Sandbox Code Playgroud)