Обработка нескольких исключений в Java
Мой abandon()
может бросить AbandonException
,
При обработке исключения я должен вызывать тот же метод, если в Vector
,
Как мне поступить? И если я не думаю, что будет лучшим решением?
if (i + 1 < lc.size()) {
try {
lc.get(i + 1).abondon();
}
catch (AbandonException e1) {
lc.get(i+2).abandon();}}
2 ответа
Решение
Вы могли бы использовать finally
Вот.
try {
lc.get(i + 1).abondon();
}
catch (AbandonException e1) {
} finally {
your code
}
Ниже приведен псевдокод:
List errorIndexList = new ArrayList();
for(...) {
if (i + 1 < lc.size()) {
try {
lc.get(i + 1).abondon();
} catch (AbandonException e1) {
errorIndexList.add(i+1);
// do some error handle work ..
// print error log/info if need,
continue; // this is optional, in case it's the last statement,
}
}
}
// use errorIndexList to handle your errors, if need,