Come controllare se una stringa è numerica in Java
Come controllereste se una stringa è un numero prima di analizzarla?
833
3
Come controllereste se una stringa è un numero prima di analizzarla?
Puoi usare
NumberFormat#parse
:Analizzatelo (cioè con
Integer#parseInt
) e semplicemente catturare l'eccezione. =)Per chiarire: la funzione parseInt controlla se può analizzare il numero in ogni caso (ovviamente) e se vuoi analizzarlo comunque, non stai andando a prendere alcun colpo di prestazioni facendo effettivamente l'analisi.
Se non volete analizzarlo (o lo analizzate molto, molto raramente) potreste desiderare di farlo diversamente, naturalmente.
Penso che l'unico modo per dire in modo affidabile se una stringa è un numero, è analizzarla. Quindi io la analizzerei, e se è un numero, si ottiene il numero in un int gratis!