次のコード
def f(chars: List[Char]): List[List[Char]] = chars match {
case Nil => List(Nil)
case x :: xs => for {
v <- f(xs)
} yield List(x) :: v
}
エラーメッセージを表示します
- type mismatch; found : List[List[Any]] required: List[List[Char]]
ここで 'for' が Char ではなく最も一般的な Any を選択する理由を理解してください。言語仕様のどのトピックを読む必要がありますか? ありがとう。