0

コンパイラは、次のコードについて不平を言っています: 展開された関数のパラメータ タイプがありません

どうすれば幸せになれるのかわからない。何か案は?

def unwrapMap(m: Map[_, _]) =
  { (vcType: String) =>
    m.map {
      case (k, v) => {
        (k,v)  // echo the map for sample purposes
      }
    }.toMap
  }
4

1 に答える 1

1

'_' で破棄するのではなく、具体的な型を Map に指定する必要があります。

  def unwrapMap[A, B](m: Map[A, B]) =
  { (vcType: String) =>
    m.map {
      case (k, v) => {
        (k,v)  // echo the map for sample purposes
      }
    }.toMap
  }

こうすることで、コンパイラはメソッド '.map' に作成された無名関数の型を推測できます。

于 2013-03-23T17:08:28.813 に答える