¿Por qué + e cancelada y no -e?

Roshana Pitigala:
System.out.println(2e+5);

La producción de la línea de arriba es,

200000.0

Mientras que debajo de la línea es,

System.out.println(2e-5);

de salida es,

2.0e-5

¿Por qué 2e-5no se resuelve abajo con -10^5dar la salida,

0.00002
JB Nizet:

Porque así es como los diseñadores de la clase doble eligieron para ponerlo en práctica :

[...]

  • Si m es mayor que o igual a 10 -3 , pero inferior a 10 7 , a continuación, se representa como la parte entera de m, en forma decimal sin ceros a la izquierda, seguido por ''. ( '\ u002E'), seguido de uno o más dígitos decimales que representan la parte fraccional de m.
  • Si m es inferior a 10 -3 o mayor que o igual a 10 7 , a continuación, se representa en la llamada "informatizado notación científica." [...]

Podrían haber hecho otra elección, por supuesto, pero eso es simplemente cómo es.

Como dice la documentación, si quieres un formato específico, utilice un NumberFormatdar formato a su doble.

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=178144&siteId=1
Recomendado
Clasificación