Eu tenho um flutuador primitivo e preciso como um duplo primitivo. Simplesmente lançar o flutuador para dobrar me dá uma precisão extra estranha. Por exemplo:
float temp = 14009.35F;
System.out.println(Float.toString(temp)); // Prints 14009.35
System.out.println(Double.toString((double)temp)); // Prints 14009.349609375
No entanto, se em vez de lançar, eu produzir o float como uma string e analisar a string como um double, eu consigo o que quero:
System.out.println(Double.toString(Double.parseDouble(Float.toString(temp))));
// Prints 14009.35
Existe uma maneira melhor do que ir para String e voltar?