...
Widening conversions resulting from integer promotions preserve the overall magnitude of the number. However, promotions in which the operands are converted from an int to a float or from a long to a double can cause unexpected loss of precision. (See guideline FLP10-J. Beware of precision lost loss when casting primitive integers to floating-point for more details.)
...