【发布时间】:2016-11-17 09:19:59
【问题描述】:
我对 scala 还很陌生,正在尝试一些简单的事情。我创建了一个看起来像这样的函数:
private def checkValu() : Option[Integer] = {
if(!list.isEmpty()){
for(value <-list){
val x = list.get(0)
}
}
return (x)
}
我调用函数以返回值 x。我访问列表的值并希望返回列表中的第一个值。但不知何故,这似乎不起作用。它给了我一个错误说
"not found value x".
我也尝试过不使用“return”语句,但它在 if 和 for 循环中给出错误提示
"type mismatch; found : Unit required: Option[Integer]"
我在这里缺少什么?有没有人可以帮帮我。
提前谢谢你。
【问题讨论】:
-
这不是 JavaScript。 x 的作用域是它所在的块,而不是包含函数。
-
为什么这被否决了 4 次?这显然是 a) 尝试 b) 语言新手和 c) 在正确的网站上寻求帮助的人。没有任何煽动性,示例包含代码。
-
@wheaties 我认为需要澄清什么是预期结果。 (我也看到了积极的部分,这就是为什么我决定回答它,尽管我也能理解那些投反对票的人。)
-
@GáborBakos 很高兴你回答。我认为刚接触某个学科的人的普遍问题是他们不知道如何问他们不知道的东西,因为他们知道的太少了。
标签: scala loops return return-value