DecimalFormat und wissenschatliche (Potenz-)Schreibweise

at0m

Mitglied
Hallo zusammen,

mir liegen Zahlen (in String-Variablen) in wissenschaftlicher Potenzschreibweise vor, wie z.B: 8.000E+00, 2.621E-05, 2.323E+01, usw. Diese möchte ich nun in double-Werte konvertieren. Soweit ich weiß, könnte man dies mit DecimalFormat erreichen, leider finde ich dazu aber nichts brauchbares im Netz.

Kann mir jemand ein Beispiel zeigen, wie man eine solche Zahl konvertieren könnte?

Würde mich sehr freuen!
 

Flown

Administrator
Mitarbeiter
Simples Double::parseDouble reicht.
Java:
public class Test {
    public static void main(String... args) {
        System.out.println(Double.parseDouble("8.000E+00"));
        System.out.println(Double.parseDouble("2.621E-05"));
        System.out.println(Double.parseDouble("2.323E+01"));
    }

}

EDIT: Zu langsam :)
 

at0m

Mitglied
Vielen Dank für die schnellen Antworten!
Ja, erstmal funktioniert es wie geplant, mit einer Ausnahme. Ich habe die folgenden Zahlen, die ich nacheinander konvertieren möchte:

0.000E+00
1.221E-04
3.052E-04
5.493E-04
8.850E-04
1.312E-03
1.770E-03
2.319E-03


Konvertiert wird das ganze in:

0.0
1.221E-4
3.052E-4
5.493E-4
8.85E-4
0.001312
0.00177
0.002319


Hier der entsprechende Codeabschnitt (der innerhalb einer for-Schleife steht):
Java:
double doubleValue = Double.parseDouble(stringValue);
NumberFormat formatter = new DecimalFormat("#0.0000000000000000000");
formatter.format(doubleValue);
System.out.println(doubleValue);

Potenz von -3 klappt, -4 dagegen nicht mehr. Warum ist das so, wisst ihr das?
 

MWin123

Bekanntes Mitglied
formatter.format(doubleValue); gibt einen String zurück, den du nicht verwendest. Also doubleValue ändert sich nicht.

Möglich wäre:
System.out.printf("%f", doubleValue);
oder
System.out.println(formatter.format(doubleValue));
 

Flown

Administrator
Mitarbeiter
Du brauchst auch eher sowas wie:
Java:
String[] doubles = { "0.000E+00", "1.221E-04", "3.052E-04", "5.493E-04", "8.850E-04", "1.312E-03", "1.770E-03",
     "2.319E-03" };
NumberFormat format = new DecimalFormat("0.000E00", DecimalFormatSymbols.getInstance(Locale.ENGLISH));
for (String s : doubles) {
   double d = Double.parseDouble(s);
   System.out.println(format.format(d));
}
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
I DecimalFormat in Zahlenformat für Währung, habe 7,99, bekomme aber 7 Java Basics - Anfänger-Themen 4
J java.text.DecimalFormat Java Basics - Anfänger-Themen 5
P DecimalFormat Java Basics - Anfänger-Themen 5
V Tausender Trennzeichen DecimalFormat & NumberFormat Java Basics - Anfänger-Themen 8
H DecimalFormat mit BigDecimal? Java Basics - Anfänger-Themen 6
N Methoden Decimalformat variabel einstellen Java Basics - Anfänger-Themen 18
L DecimalFormat InputStringException Java Basics - Anfänger-Themen 5
H DecimalFormat Java Basics - Anfänger-Themen 6
C DecimalFormat-Patern funktioniert ab 11 Stellen nicht mehr Java Basics - Anfänger-Themen 3
D Datentypen Double 2 stellen hinter dem Komma ausgeben OHNE decimalformat Java Basics - Anfänger-Themen 2
L DecimalFormat - wo ansetzen? Java Basics - Anfänger-Themen 4
S DecimalFormat deutsche Trennzeichen. Java Basics - Anfänger-Themen 4
R Decimalformat mit Aufzählung von 1 bis 100 Java Basics - Anfänger-Themen 2
I kleines problemchen bei DecimalFormat Java Basics - Anfänger-Themen 6
G Problem mit DecimalFormat Java Basics - Anfänger-Themen 3
D komme heute mit dem DecimalFormat nicht klar... Java Basics - Anfänger-Themen 2
J String Formatieren DecimalFormat oder wie? Java Basics - Anfänger-Themen 4
I Potenz berechnen mit for-Schleife Java Basics - Anfänger-Themen 3
F Potenz ausrechnen Hilfe! Java Basics - Anfänger-Themen 7
E Erste Schritte Potenz Negativ (rekursiv) Java Basics - Anfänger-Themen 2
L Rekursive Methode zur Berechnung der Potenz q hoch p Java Basics - Anfänger-Themen 17
A mantisse var * 10 hoch potenz var Java Basics - Anfänger-Themen 2
hello_autumn Potenz selber berechnen, Rekursiv. Java Basics - Anfänger-Themen 6
C Gleichung mit Potenz mit einer Unbekannten lösen Java Basics - Anfänger-Themen 5
R 2er Potenz mit vorgegebenem Schema Java Basics - Anfänger-Themen 5
W Potenz Java Basics - Anfänger-Themen 6
J Methoden Rekursive Potenz ohne Math.Pow() Java Basics - Anfänger-Themen 9
M Potenz berechnen Java Basics - Anfänger-Themen 3
P Usereingabe und Potenz berechnen Java Basics - Anfänger-Themen 16
2 2er Potenz berechnen Java Basics - Anfänger-Themen 17
K Potenz mit Summer der ungeraden Zahlen Java Basics - Anfänger-Themen 14
E Potenz mit Modulo (über for-Schleife) berechnen Java Basics - Anfänger-Themen 8
M Potenz mithilfe rekursiver Funktion Java Basics - Anfänger-Themen 13
Haubitze_Broese Potenz einer Zahl, der Exponent ist dabei eine beliebige ganze Zahl? Java Basics - Anfänger-Themen 10
J programm für kleinste potenz Java Basics - Anfänger-Themen 10
G Potenz in Java Java Basics - Anfänger-Themen 20

Ähnliche Java Themen

Neue Themen


Oben