如何在方法内引发异常?

时间:2018-09-25 08:27:29

标签: scala

def max(xs: List[Int]): Int = if(xs.isEmpty) throw java.util.NoSuchElementException else ...

如果xs为空,则应引发异常。但是我得到一个错误,因为java.util.NoSuchElementException与返回类型Int

不匹配

1 个答案:

答案 0 :(得分:2)

您应该尝试

throw new NoSuchElementException("empty list")

您正在尝试上课。在Scala中,就像在Java中一样,您只能抛出类的实例,而不能抛出类本身。您必须使用NoSuchElementException的构造函数之一。