Pessoal, estou com uma duvida!!
O usuario vai digitar um numero em uma String, e eu quero saber c esse numero e inteiro ou real, como e q eu faco???
Abracao e te +
Pessoal, estou com uma duvida!!
O usuario vai digitar um numero em uma String, e eu quero saber c esse numero e inteiro ou real, como e q eu faco???
Abracao e te +
Blz?
Então, procurei algum método que já retornasse se é inteiro ou não, mas não encontrei (Não procurei muito)… ai criei um…
/**
* Retorna true se a String passada como parametro representar um valor inteiro
* e false caso a seja um valor com casas decimais
* @param s String String com o valor numérico
* @return boolean Retorna true se a String passada como parametro representar um valor inteiro
* e false caso a seja um valor com casas decimais
*/
public static boolean isInt (String s) {
double d = Double.parseDouble(s);
int i = (int)d;
return d == i;
}
O método é bem simples, ele converte a String para double, depois faz um cast de double para int e for fim, verifica se os dois são iguais, se for, é porque é um inteiro, ou seja, não houve perda de casas decimais, e caso contrário é false (numero com casas decimais).
Se alguém souber algum método que já faz isso, fala ai…
axo que o ideal é usar o bloco Try…Catch
Nem precisa por um [b]try/catch[b], só colocar um throws NumberFormatException no método, pois o método Double.parseDouble já sobe a exceção e força que o usar a colocar em um try/catch… 
O kra valeu mesmo!!
Abracao e te +