Propagiere die geprüfte Ausnahme als RuntimeException:
%Vor%EDIT: Da die transformierte Liste langsam ausgewertet wird, wird die Ausnahme nicht ausgelöst, bis Sie auf die Listenelemente zugreifen. Sie können die Auswertung erzwingen, indem Sie die transformierte Liste in eine neue Liste kopieren, z. B .:
%Vor%Sie könnten das in einen try-catch-Block schreiben, der RuntimeException abfängt und so behandelt, wie Sie wollen; Ihre ursprüngliche SomeException-Instanz kann durch Aufrufen von getCause () für die RuntimeException abgerufen werden. Oder Sie könnten einfach die RuntimeException platzen lassen.
Es hängt davon ab, wie Sie mit der Ausnahme umgehen wollen.
Setzen Sie die Listenumwandlung fort und entfernen Sie das Element, das die Ausnahme verursacht hat (und protokollieren Sie einige Fehlermeldungen). In diesem Fall geben wir null zurück, wenn eine Ausnahme auftritt. Dieser Nullwert wird aus der endgültigen Liste entfernt:
%Vor%BEARBEITEN Wenn someMethod einen Nullwert zurückgeben kann, sollten Sie einen Wrapper wie diesen verwenden:
%Vor%Die Listenumwandlung lautet dann:
%Vor%