¿Cómo se comprueba si una cadena es un número antes de analizarla?
Puede utilizar NumberFormat#parse
:
try
{
NumberFormat.getInstance().parse(value);
}
catch(ParseException e)
{
// Not a number.
}
Parsearlo (es decir, con Integer#parseInt
) y simplemente atrapar la excepción. =)
Para aclarar: La función parseInt comprueba si puede parsear el número en cualquier caso (obviamente) y si quieres parsearlo de todos modos, no vas a tener ningún golpe de rendimiento por hacer el parseo.
Si no quiere analizarlo (o lo hace muy, muy raramente) puede que quiera hacerlo de otra manera, por supuesto.