18

これが私のコードです:

package example

object Lists {

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

sbt コンソールで実行すると:

scala> import example.Lists._
scala> max(List(1,3,2))

次のエラーがあります。

Scala.NotImplementedError: an implementation is missing

どうすれば修正できますか?

ありがとう。

4

5 に答える 5

25

example.Lists を開くと、以下の行が表示されます。

def sum(xs: List[Int]): Int = ???
def max(xs: List[Int]): Int = ???

0の代わりに使用し???ます。

于 2013-09-23T09:59:03.443 に答える
7

また、機能する最大値の正しい再帰実装を配置します

  def max(xs: List[Int]): Int = {
    if(xs.isEmpty){
      throw new java.util.NoSuchElementException()
    }
    val tailMax =  if (xs.tail.isEmpty)  xs.head else max(xs.tail)
    if (xs.head >= tailMax){
      xs.head
    }
    else  tailMax;
  }
于 2014-09-17T02:29:45.337 に答える