scala 新手,似乎无法让我的匹配表达式工作。我已经了解了语句评估方式之间的差异(例如,一个新变量与声明的变量相对),但似乎无法使反引号或大写起作用。
// declared inside of object
val numberOne = "+17201234567"
val numberTwo = "+17201235678"
def returnSomething(number: String): String = number match {
case numberOne => "my first number"
case numberTwo => "my second number"
case _ => "a default number"
}
...
returnSomething("+17201235678") // should return "my second number"
请帮助澄清为什么这不起作用,因为我在匹配语句的第二行收到“无法访问的代码”错误。我知道这个问题已经结束了,但由于某种原因,我见过的例子都不适合我。典型的菜鸟语言。谢谢!
其中任何一个都可以:
// declared inside of object
val numberOne = "+17201234567"
val numberTwo = "+17201235678"
def returnSomething(number: String): String = number match {
case `numberOne` => "my first number"
case `numberTwo` => "my second number"
case _ => "a default number"
}
// declared inside of object
val NumberOne = "+17201234567"
val NumberTwo = "+17201235678"
def returnSomething(number: String): String = number match {
case NumberOne => "my first number"
case NumberTwo => "my second number"
case _ => "a default number"
}
但你说你试过了,但没有成功。那么,到底出了什么问题呢?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)