6
Estoy utilizando Math.round y estoy descubriendo que no me devolverá ningún valor mayor que (2^32/2) -1, pero la documentación indica que puede/devolverá valores largos, es decir, 2^64 ... Aquí hay un fragmento de código.Math.round MAX valor retornable
long bTmp = (long)Math.round(4294967296L);
System.out.println(bTmp);
System.out.println(Long.MAX_VALUE);
qué salida:
2147483647
9223372036854775807
Me estoy perdiendo algo?
sólo para añadir algo de información sobre lo que se hace: http://docs.oracle.com/javase/specs/jls/se7/html/jls-5.html#jls- 5.1.2 Por defecto hay una ampliación de largo a flotante. Para aplicar el comportamiento con el doble, debe ser lanzado. –