在Scala源中导入'val'包

pro*_*oba 2 scala

创建一个名为'val'的Java包,并在其中放入一个类,并尝试在Scala程序中导入它.scalac将失败,并显示以下错误消息:

[scalac] /tmp/Hello.scala:6: error: identifier expected but 'val' found.
[scalac] import net.slimweb.ann.val.NotEmpty
[scalac]                        ^
[scalac] one error found
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

Itt*_*ayD 14

import net.slimweb.ann.`val`.NotEmpty
Run Code Online (Sandbox Code Playgroud)

反引号可用于转义符号:

scala> val `val` = 1
val: Int = 1

scala> class `val`
defined class val
Run Code Online (Sandbox Code Playgroud)

除了使用它们来定义具有保留名称的符号,或者调用具有关键字作为方法的遗留Java代码(例如,以其命名的方法)之外,它们还可以用于包含空格的符号或其他奇怪的字符