Przykład

public static void main (String[] args){
int value = 0;
try {
value = Integer.parseInt( args[ 0 ] );
} catch ( NumberFormatException e0 ) {
try {
value = Integer.parseInt( args[ 1 ] );
} catch ( NumberFormatException e1 ) {
try {
value = Integer.parseInt( args[ 2 ] );
} catch ( NumberFormatException e2 ) {

}
}
}
}

Rozwiązanie
Użyj wzorca projektu strategii.
  1. Utwórz interfejs na potrzeby wykonania zadania.
  2. Zgłoś wyjątek przy użyciu metody wykonującej zadanie.
  3. Przekształć klasę z zagnieżdżonym blokiem try/catch w kontener strategii.
  4. Zmień zagnieżdżony blok try/catch w pętlę for.
  5. Zastosuj strategie po wystąpieniu wyjątku w pętli.

public static void main (String[] args){
int value = 0;
for ( int i = 0; i < args.length; i++ ) {
try {
value = Integer.parseInt( args[ i ] );
break ;
} catch ( NumberFormatException e ) {
// Ignoruj wyjątek
}
}

}