Qual è il modo migliore di gestire le eccezioni mentre si scorre su un ciclo in Scala? Ad esempio, se avessi un metodo convert() che potrebbe generare un'eccezione, vorrei rilevare quell'eccezione, registrarla e continuare a ripetere. Esiste un modo "scala" per farlo?Scala: rilevazione di un'eccezione all'interno di una mappa
Idealmente, vorrei qualcosa di simile ...
val points: Seq[Point] = ...
val convertedPoints: Seq[ConvertedPoint] = points.map(
p => {
try { p.convert() }
catch { case ex: Exception => logger.error("Could not convert", ex) }
})
Non si può fare il codice di cui sopra in quanto non è una mappatura diretta da un elenco all'altro (si torna Seq [Qualsiasi] al contrario di Seq [ConvertedPoint]). Qualsiasi aiuto sarebbe molto apprezzato!
Grazie!
hai rubato la mia risposta, ma +1 per spiegandolo meglio :-) Benvenuto in SO. –
Concordato: la tua risposta era corretta al 100% (e un'ispirazione), ma penso che aggiungere ulteriori dettagli giustificasse un'altra risposta invece di un semplice commento. :) – DaGGeRRz