私はBeginningScalaを読んでいて、REPLの例を試していました。以下のようにxmlとtoInt関数を作成しました
val x = <x>{(1 to 3).map(i => <i>{i}</i>)}</x>
def toInt(in : String) : Option[Int] = {
try {
Some(Integer.parseInt(in))
}
catch {
case e : Exception => None
}
}
そして、私は次のことを試みました
(x \\ "i").map(i => i.text.toInt) // returns Seq[Int]
(x \\ "i").map(i => toInt(i.text)) // returns Sep[Option[Int]]
最初のバージョンがSeq[Int]を返し、2番目のバージョンがSeq [Option [Int]]を返すのはなぜですか?
ありがとう