int i = 0;
String param;
int cislo = 0;
boolean ok = false;
do {
try {
// zde může vzniknout výjimka ArrayIndexOutOfBoundsException
param = args[i];
// zde může vzniknout výjimka NumberFormatException
cislo = Integer.parseInt(param);
// sem se dostane, jen když nevznikla žádná výjimka
ok = true;
} catch (NumberFormatException nfe) {
// sem se dostane, byl-li vstup ve špatném formátu (ne číslo)
System.err.println("Parametr "+i+" neni platne cele cislo");
i++; // zkusíme další parametr
} catch (ArrayIndexOutOfBoundsException iob) {
// sem se dostane, byl-li překročena velikost pole -> chybový výstup err
System.err.println("Nepredan zadny ciselny parametr");
// sami vyhodíme výjimku
throw new IllegalArgumentException(
"Nezadan zadny celociselny parametr.");
}
} while (!ok);
System.out.println("Zadano cislo="+cislo);