Scala语法奇怪与::并要求小写
这应该发生吗?
scala> val myList = List(42) myList: List[Int] = List(42) scala> val s2 :: Nil = myList s2: Int = 42 scala> val S2 :: Nil = myList <console>:8: error: not found: value S2 val S2 :: Nil = myList ^ 它似乎区分大小写.错误或“功能”? 解决方法
它区分大小写.在匹配模式中,以大写字母开头(或由反引号引用)的标识符被视为对定义值的引用,而不是新绑定.
这让很多人感到意外,而且阅读Scala语言规范并不是很明显.最相关的位是“variable patterns”……
……和“stable identifier patterns”:
相关问题: > Why does pattern matching in Scala not work with variables? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |