Tenho um método que faz algumas operações aritméticas. Daí eu pego o resultado da operação e transformo em uma string para exibi-la em um JLabel. Acontece que quando a operação retorna um número inteiro, o resultado exibido sempre dá com um .0 (exemplo: 2 + 2 = 2.0). O que eu posso fazer para tirar o “ponto zero”, já que o resultado deu um inteiro, embora armazenado em um double?
Pensei em tentar descobrir se o resultado deu inteiro, daí é só retirar os dois últimos caracteres da string (visto que o double é transformado em string). Mas eu não sei fazer isto. Alguém pode me ajudar? Me passar um exemplo? - - -sou iniciante…
Obrigado.
Voce tb pode fazer uma CAST de double para int ja que o valor esta armazenado numa variavel double…o unico problema é que vai arredondar o numero, ai se for o caso depois vc converte o int para string
double valor = 2.0; // valor double
int valor2 = (int) valor; // cast para inteiro (transforma de 2.0 para 2 )
String recebeValor = Integer.toString(valor2); // converte para String
Estou imaginando que o Knik esteja querendo fazer algo como:
se o resultado for 2.0 então mostrar “2”
se o resultado for 2.4 então mostrar “2.4”
Em particular acho que isso é “feio”. Prefiro que mostre sempre uma quantidade fixa de dígitos depois da vírgula, como “2.40000” ou “2.00000”. Para fazer isso, pode-se usar String.format ("%.5f", x) ou então new DecimalFormat ("#.00000").format(x)