2012-05-25 22 views
5

Quiero permitir a los usuarios editar un campo con doble información. Quiero permitir Double.NaN (a valores vacíos). ¿Existe una forma genérica (una cadena predefinida) que se analiza en Double.NaN desde el método Double.valueOf(String) sin verificarlo en segundo plano?Parse String to Double.NaN

Hay un char especial que parece un diamante con un signo de interrogación (en HTML) que actúa como NaN, pero, bueno, los usuarios no lo encontrarán en sus claves.

Respuesta

8

Puede pasar +NaN o -NaN o NaN al valueOf() y hacer que devuelva un NaN. El documentation brinda todos los detalles.

+0

Ok que funciona, pero no para mi caso especial. Debería haber mencionado que uso Groovy/Grails para analizarlo desde los datos del formulario HTML al doble. Dice que es un "número imposible de encontrar" y se cierra con una excepción IllegalArgumentException. Tal vez se invoque otro método para convertir la propiedad ... – matcauthon

+0

Sin embargo, esa no es la pregunta que hizo. Preguntaste sobre 'Double.valueOf'. Parece que necesitas una nueva pregunta. –

+1

Pensé que el proceso de conversión invoca Double.valueOf (String) por sí mismo y, por lo tanto, es algo relacionado con Java simple, pero aparentemente no lo es. Es difícil depurar y encontrar lo que realmente se llama. ¡Lo siento por esa pregunta poco clara! – matcauthon

1

parseDouble("NaN") devolverá un valor NaN:

System.out.println(Double.isNaN(Double.parseDouble("NaN"));