【发布时间】:2017-04-27 19:38:14
【问题描述】:
我正在尝试编写一个函数 myfoo,它采用一个 Int 和一个 int 列表来验证 int 元素是否在列表中。如果 int 在列表中,它应该返回“true”,否则返回 false。 我已经写了这个函数,但是当我编译它时它返回这个错误:
error: type mismatch;
found : Unit
required: Boolean
breakable { for (i <-l) {
^
one error found*
这是我的程序:
import scala.util.control.Breaks._
object findEl extends App{
def myfoo (x:Int,l:List[Int]):Boolean={
breakable { for (i <-l) {
i match {
case a if (a==x) => true
case _ => false
break
}
}
}
}
println(myfoo(1,List(1,2,3,4))) //should print "true"
}
我该如何解决? :)
【问题讨论】:
-
我必须使用必要的“匹配”结构来锻炼!
-
您是否在任何地方指定了“易碎”??
-
你也必须使用
breakable吗?如果没有,你应该匹配l,并且没有任何for。 -
@Pierfrancesco 请不要在您的问题标题中将“SCALA”大写。这非常令人分心。这是我在 2 个帖子中的 第二次 次 出于这个原因编辑您的标题。
标签: scala list pattern-matching