Kako preveriti, ali je niz številski v Javi

Kako bi preverili, ali je niz število, preden ga razčlenite?

Uporabite lahko NumberFormat#parse:

try
{
     NumberFormat.getInstance().parse(value);
}
catch(ParseException e)
{
    // Not a number.
}
Komentarji (5)

ga razčlenite (npr. s Integer#parseInt ) in preprosto ujamemo izjemo. =)

V pojasnilo: Funkcija parseInt v vsakem primeru preveri, ali lahko razčleni število (seveda), in če ga vseeno želite razčleniti, ne boste utrpeli nikakršnega posega v zmogljivost, če boste dejansko izvedli razčlenjevanje.

Če ga ne želite razčleniti (ali ga razčlenite zelo, zelo redko), lahko seveda to storite drugače.

Komentarji (3)

Mislim, da je edini način, da zanesljivo ugotovite, ali je niz število, ta, da ga razčlenite. Zato bi ga samo razčlenil, in če je število, ga brezplačno dobite v obliki int!

Komentarji (0)