When converting the Float value of 3.14 to double whith this code:
Float my_float = new Float(3.14);
System.out.println("Float : " + my_float);
Double my_double = new Double (my_float.doubleValue());
System.out.println( "Double : " + my_double);
This is what is output:
Float : 3.14
Double : 3.140000104904175
How did the Double get the extra decimal places instead of retaining the original value of 3.14?