Matemática: Saber se é Integer ou Float

Olá pessoal,

Preciso encontrar uma lógica matemática para saber se um número é inteiro ou float.
Por exemplo, as vezes posso ter um número como “1.5” (float) e as vezes ter um número “2”.
Preciso de um calculo que pegando a variável “n”, eu saiba se é inteiro ou float.

Uma solucao 'e converter para string e procura pelo delimitador decimal ‘.’
Outra

if (valor-trunc(valor) > 0)
entao 'e float

[quote=andalmeida]Uma solucao 'e converter para string e procura pelo delimitador decimal ‘.’
Outra

if (valor-trunc(valor) > 0)
entao 'e float

[/quote]

Muito Obrigado, Eu buscava uma solução simples assim, sem ter de usar try catch para algo tão simples.

Bom mais é sempre bom você manipular erros com try catch, mesmo que seja simples. Ainda mais com conversões que é sempre mas fácil de acontecer algum erro

Mais é isso ae, marque o tópico como [RESOLVIDO] pra organizar melhor os tópicos

Valeww

Faz assim:

if (x.class == int.class) { //faz algo } else if (x.class == float.class) { //faz outra coisa }

Não sei se classes vc compara assim (==), mas vc pode comparar os .class das variáveis. Ele vai te retornar int ou float.

Se vc está usando os tipo Integer e Float, (as classes e não os tipos primitivos)
vc pode usar o instanceof


Integer myInt = new Integer(10);
Float myFloat = new Float(10.5);

if(myFloat instanceof Float){

   //código se for float
}

ACHO que funciona

Se não me engano, no meu exemplo tem que usar o x.getClass()