Ich habe einen primitiven Float und ich brauche als primitiven Double. Wenn ich den Schwimmer einfach verdopple, bekomme ich seltsame zusätzliche Präzision. Beispielsweise:
float temp = 14009.35F;
System.out.println(Float.toString(temp)); // Prints 14009.35
System.out.println(Double.toString((double)temp)); // Prints 14009.349609375
Wenn ich jedoch anstelle des Castings den Float als String ausgeben und den String als Double analysieren möchte, erhalte ich das, was ich will:
System.out.println(Double.toString(Double.parseDouble(Float.toString(temp))));
// Prints 14009.35
Gibt es einen besseren Weg als nach String und zurück zu gehen?