Como faço para verificar se um número tem ponto flutuante???
Como faço para verificar se um número tem ponto flutuante?
T
4 Respostas
R
1.300
29.46
-1.27
937.24
Até onde sei, ponto flutuante são esses pontos finais, que servem pra representar números com casas decimais, positivo ou negativo.
T
1 like
Os números depois da vírgula (ou ponto) num número real (float/double) são geralmente chamados de casas decimais.
Não sei se é o método mais eficiente, mas um jeito simples seria subtrair do número sua parte inteira (obtida com Math.floor ou Math.ceil), e verificar se o que sobra é igual a zero. Algo assim:
double numero = 10.10;
double resto = numero - Math.floor(numero);
if (resto != 0f){
//numero tem parte decimal
}
Exemplo rodando: https://ideone.com/JOOt3a
Abraço.
S
1 like
Exemplo:
public static void main(String[] args) {
double[] numeros = new double[] {
0,
0.0,
0.01,
5.5,
4.98,
4.00,
7,
7.0,
9.99,
10
};
for (double numero : numeros) {
String flutuante = hasFloatingPoint(numero) ? "sim" : "não";
System.out.printf("%.2f : %s%n", numero, flutuante);
}
}
static boolean hasFloatingPoint(double number) {
return number - ((long) number) != 0;
}
M
double numero = 5.5;
if(numero != (int) numero)
{
System.out.println("Tem ponto flutuante");
}
Criado 8 de junho de 2018
Ultima resposta 8 de jun. de 2018
Respostas 4
Participantes 5
Alura Git Flow: entenda o que é, como e quando utilizar Entenda o que é Git Flow, como funciona seu fluxo com branches como Master, Develop, Feature, Release e Hotfix, além de vantagens e desvantagens.
Casa do Codigo Apache Kafka e Spring Boot: Comunicacao assincrona entre... Por Eduardo Felipe Zambom Santana — Casa do Codigo