我在一本书上找到了以下代码
val list = List(5, 4, 3, 2, 1)
val result = (0 /: list) { (`running total`, `next element`) ⇒
`running total` - `next element`
}
是否使用反引号来创建带空格的变量名?
使用返票无效的变量名可以是有效的。当你使用反引号时,你也可以使用 scala 保留关键字作为变量名。您可以使用空格分隔甚至换行符分隔的变量以及反引号作为有效的变量名称。
Scala 反引号
scala> val `hello world` = "asdjaklsdja"
hello world: String = asdjaklsdja
scala> val `val` = "fasfasadsas"
val: String = fasfasadsas
scala> val `class` = "fasfasadsas"
class: String = fasfasadsas
scala> val `case` = "fasfasadsas"
case: String = fasfasadsas
scala> val `foo bar \n foo bar` = "asdasdasd"
foo bar
foo bar: String = asdasdasd
模式匹配中的反引号
scala> val age = 18
age: Int = 18
scala> :paste
// Entering paste mode (ctrl-D to finish)
def is18(a: Int): Boolean = a match {
case `age` => true
case _ => false
}
// Exiting paste mode, now interpreting.
is18: (a: Int)Boolean
scala> is18(21)
res0: Boolean = false
scala> is18(18)
res1: Boolean = true
在模式匹配中,它可以帮助您像使用具体值一样使用变量。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)