我试图通过元组赋值声明变量,例如:
val (hi,bye) = ("hi","bye")
显然这很好.但是,当第一个字符为大写时,编译器会爆炸并抱怨这些变量尚未定义.
val (Hi,Bye) = ("hi","bye")
为什么这不起作用?我正在运行Scala 2.11.
顺便说一句(正如预期的那样):
val Hi = "hi" val Bye = "bye"
解决方法
从
here开始:
The tuple on the left-hand side is a pattern; names starting with capital letters are treated as constants when occurring inside a pattern. These constants must exist as values in the context. You find the exact semantics in the Scala spec under pattern matching.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。