¿Hay alguna forma de convertir un tipo de datos Long
en Double
o double
? Por ejemplo, necesito convertir 15552451L
a un tipo de datos double
.Conversión de largo a doble en Java
Respuesta
¿Fundición simple?
double d = (double)15552451L;
¿Qué quiere decir por un fecha larga tipo?
Puede proyectar una larga a un doble:
double d = (double) 15552451L;
Supongo que una fecha larga sería algo así como "Martes, 19 de septiembre 24893243092333". –
Usted podría simplemente hacer:
double d = (double)15552451L;
O usted podría obtener el doble del objeto siempre y cuando:
Long l = new Long(15552451L);
double d = l.doubleValue();
¿por qué? por favor explique – YoK
No necesita ninguna cadena de análisis allí: 'Long.valueOf (15552451L) .doubleValue()' si desea ir a través de 'Long'. Tenga en cuenta que esto es lo mismo, internamente, que el lanzamiento de un 'doble', excepto que está haciendo algo de auto/unboxing. –
@jjk es mi respuesta incorrecta? ¿No funcionará? – YoK
Son estás buscando la conversión binaria?
double result = Double.longBitsToDouble(15552451L);
Esto le dará la double
con el mismo patrón de bits que la long
literal.
Los literales binarios o hexadecimales serán útiles aquí. Aquí hay unos ejemplos.
double nan = Double.longBitsToDouble(0xfff0000000000001L);
double positiveInfinity = Double.longBitsToDouble(0x7ff0000000000000L);
double positiveInfinity = Double.longBitsToDouble(0xfff0000000000000L);
(Ver Double.longBitsToDouble(long))
También puede obtener el long
atrás con
long bits = Double.doubleToRawLongBits(Double.NaN);
Esto hace algo más, vea el jdoc (http://docs.oracle.com/javase/6/docs/api/java/lang/Double.html#longBitsToDouble(long))) –
Sí. Pero no especificó * cómo * quiere convertir 'long' a' double' (creo que el casting es una de las primeras cosas que aprende al usar Java) ni aceptó ninguna respuesta. Tal vez quiera obtener un 'doble' con el mismo patrón de bits que el valor' largo'. Bueno, no sé. Así que acabo de dar la respuesta. – pvorb
Agregué información adicional, por lo que la respuesta es más valiosa. – pvorb
Usted puede intentar algo como esto:
long x = somevalue;
double y = Double.longBitsToDouble(x);
Long i = 1000000;
String s = i + "";
Double d = Double.parseDouble(s);
Float f = Float.parseFloat(s);
De esta manera podemos convertir Long type a Double o Float o Int sin ningún problema porque es fácil convertir el valor de cadena a Double o Float o Int.
Siempre es mejor agregar una explicación al código que está publicando como respuesta, por lo que ayudará a los visitantes a entender por qué esta es una buena respuesta. – abarisone
Hecho @abarisone –
- 1. conversión doble de número entero en java
- 2. Conversión de largo en entero
- 3. la conversión de doble a flotar en Java
- 4. conversión de cadena a largo en pitón
- 5. perdiendo la conversión de precisión de BigDecimal java a doble
- 6. Java Doble a la cadena de conversión sin formato
- 7. Conversión de doble a cadena en C++
- 8. ¿Hay algún reemplazo de doble largo en java?
- 9. Escribir largo y doble no es atómico en Java?
- 10. la conversión de una cadena que contiene decimal a largo
- 11. Cadena de C++ a doble conversión
- 12. Conversión de char * a flotación o doble
- 13. cacao - conversión de un doble a cadena
- 14. ¿Cómo funciona la conversión del doble al int en Java?
- 15. Conversión incorrecta de doble a QString en Qt en ARM
- 16. Java: convertir largo a Timestamp
- 17. Conversión de doble a cadena con boost :: lexical_cast en C++?
- 18. Conversión de doble a char * en C++ con alto rendimiento
- 19. ¿Cómo convertir un doble a largo sin fundición?
- 20. cadena en notación C. científica ++ a doble conversión
- 21. Conversión de matriz doble a matriz de bytes
- 22. Conversión de doble a int detrás de la escena?
- 23. ¿Cómo convierto un byte a un largo en Java?
- 24. Conversión de Unicode a cadena en Java
- 25. Conversión de fecha a entero en Java
- 26. conversión de bytes a int en Java
- 27. conversión de int y largo en cadena en Ir
- 28. la conversión de una cadena a un doble
- 29. conversión de cadena doble y configuración regional
- 30. Error de conversión de tipo largo al leer el campo entero desde MongoDB en Java
Y si es un literal simplemente '15552451d' –
Incluso creo que un molde no es necesario, puede crear un doble con un valor largo como este:" double d = 1234L; ". – crusam
Probablemente no, pero la pregunta es lo suficientemente básica como para justificar la introducción de un concepto como el casting. –