我是Scala/Spark世界的新手。我試圖找出爲什麼這個代碼是可以接受的:scala中的flatMap函數和返回類型錯誤
val artistID = rawArtistData.flatMap { line =>
val (id, name) = line.span(_ != '\t')
if (name.isEmpty) {
None
} else {
try {
Some(id.toInt, name.trim)
} catch {
case e: NumberFormatException => None
}
}
}
這是不是:
val artistID = rawArtistData.flatMap { line =>
val (id, name) = line.span(_ != '\t')
if (name.isEmpty) {
None
} else {
try {
(id.toInt, name.trim)
} catch {
case e: NumberFormatException => None
}
}
}
我知道它與類型不匹配的事,但也差不多了。我的問題是爲什麼我不能返回一個元組?