I am trying to separate a double into the integer and decimal parts

So for example, the number 24.4 should be separated into 24 and 4.

int integer = (int)number;
double decimal = number-(int)number;
System.out.println(decimal); 

Using this method gives me the following values :

integer = 24
decimal = 0.3999999999999986

I need the value of decimal to be 4.

How can this problem be fixed ?

Edit
Report