Как лучше всего обрабатывать исключения при повторении цикла в Scala ?
Например, если бы у меня был метод convert ()
, который мог бы генерировать исключение, я бы хотел перехватить это исключение, зарегистрировать его и продолжить итерацию. Есть ли способ сделать это с помощью "scala"?
В идеале, я бы хотел что-то вроде ...
val points: Seq[Point] = ...
val convertedPoints: Seq[ConvertedPoint] = points.map(
p => {
try { p.convert() }
catch { case ex: Exception => logger.error("Could not convert", ex) }
})
Вы не можете выполнить приведенный выше код, так как он ' не является прямым отображением одного списка в другой (вы получите обратно Seq [Any]
в отличие от Seq [ConvertedPoint]
).