As it states from oracle
Reference from Oracle Docs
Widening Primitive Conversion 19 specific conversions on primitive types are called the widening primitive conversions:
- byte to short, int, long, float, or double
- short to int, long, float, or double
- char to int, long, float, or double
- int to long, float, or double
- long to float or double?
- float to double
If a float has 32 bits and a long has 64 how is that considered widening? Shouldn't this be considered narrowing?