根据规则,“除反引号外的任何字符中的一个或多个,都用一对反引号括起来”,可以是scala中的有效标识符。但是下面的一个错误出来了。
scala> val `123` = "OneTwoThree"
<console>:5: error: ';' expected but double literal found.
lazy val $result = 123
^
<console>:9: error: ')' expected but double literal found.
"" + "123: String = " + _root_.scala.runtime.ScalaRunTime.replStringOf(123, 1000)
我在这里想念什么吗?有人可以帮忙吗?谢谢!
在一个答案中收集所有信息,以便我们可以为以后的访问者将此问题标记为完整。
这是默认Scala REPL中的已知问题。关注问题here
目前仅根据票证上的数字发生这种情况。可能存在卫生问题。
此问题已在Ammomite中得到修复,该问题为第三方提供了开源的REPL,并带有this commit。如果您确实需要REPL支持此功能,则可以切换到Ammomite