2008-10-02 9 views
7

Dies ist ein Auszug aus einer Klasse, mit der ich in Java arbeite (unten). Offensichtlich definiert der Code eine statische Variable namens EPSILON mit dem Datentyp double. Was ich nicht verstehe, ist der Teil "1E-14". Was für eine Nummer ist das? Was heißt das?Buchstaben innerhalb ganzer Zahlen. Was sind Sie?

Enddoppel EPSILON = 1E-14;

+0

Gute Frage. Das habe ich in all den Jahren nie erlebt. Ich neu über F, D und L (dh float f = 1F; double d = 1D; lang l = 1L;) – OscarRyz

+2

ist das nicht so, etwas, was wir alle in der High School gelernt haben? –

Antwort

19

In Ihrem Fall ist, dies entspricht Schreiben:

final double EPSILON = 0.00000000000001; 

außer Sie müssen nicht die Nullen zählen. Dies wird scientific notation genannt und ist hilfreich, wenn sehr große oder sehr kleine Zahlen geschrieben werden.

5

1E3 => 1000

1E-1 => 0,1

1E-2 => 0,01

Es ist ein Weg für das Schreiben von 1 * 10 -14

9

Die " E "Notation ist wissenschaftliche Notation. Sie werden es auch auf Taschenrechnern sehen. Es bedeutet "einmal (zehn zur Potenz von -14)".

Für ein anderes Beispiel, 2E + 6 == 2.000.000.

2

1E-14 1 mal 10 hoch -14

+0

Ich denke du meinst 10, 1 bis -14 = 1 – Owen