Double.longBitsToDouble
expects a 64-bit, long
argument. Pass it a smaller value, such as an int
and the
mathematical conversion into a double
simply won't work as anticipated because the layout of the bits will be interpreted incorrectly, as
if a child were trying to use an adult's gloves.
int i = 42; double d = Double.longBitsToDouble(i); // Noncompliant