Hay por lo menos 10 maneras diferentes de hacerlo.
do {
System.
out.
println("introduce numero, y -1 para Finalizar: "); num = leer.readLine();
}while(!isNumeric(num));
Métedo que usa el código de arriba.
private static boolean isNumeric
(String string
) { try {
return true;
}
return false;
}
}
Usando banderas
boolean status = false;
do {
try{
System.
out.
println("introduce numero, y -1 para Finalizar: "); n
=Integer.
parseInt(leer.
readLine()); status=true;
}
status=false;
}
}while(status==false);
Usando otro método
do {
System.
out.
println("introduce numero, y -1 para Finalizar: "); str = leer.readLine();
}while(isLetter(str));
Método del código de arriba
private static boolean isLetter
(String string
) { if(string.matches("[a-zA-Z]"))
return true;
else
return false;
}
Sin usar método ni try catch
do {
System.
out.
println("introduce numero, y -1 para Finalizar: "); str = leer.readLine();
}while(str.matches("[a-zA-Z]"));
Un saludo.