He siguiente ejemplo (link to ideone).la conversión de una cadena que contiene decimal a largo
long lDurationMillis = 0;
lDurationMillis = Long.parseLong("30000.1");
System.out.print("Play Duration:" + lDurationMillis);
lanza una excepción:
Exception in thread "main" java.lang.NumberFormatException: For input string: "30000.1"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Long.parseLong(Long.java:419)
at java.lang.Long.parseLong(Long.java:468)
at Main.main(Main.java:9)
Pero por qué no me deja convertir ese número en una cadena directamente puedo convertir número a un entero y de convertir al doble?. ¿Pero hay alguna otra manera?
Por qué no convertir el decimal directamente a un '' double' con Double.parseDouble (texto); 'oa un BigDecimal con 'new BigDecimal (text);' –
El título dice conversión de cadena a larga, la primera pregunta es sobre la codificación del número a la cadena, la siguiente declaración sobre la conversión del número a entero a la cadena. Estoy confundido –
No está claro a qué te refieres. PUEDE convertir cualquier número a 'Cadena' con, por ejemplo,' Long.toString (long l) '. –