2016-04-07 7 views
2

Ich muss String-Wert in Doppel mit Punkt konvertieren. Hier ist ein einfacher CodeKonvertieren von Zeichenfolge in Doppel mit Punkt

double dValue=Double.parseDouble("999999999.99"); 
System.out.println(dValue); 
output is: 9.9999999999E8 

Wenn ich Wert gab wie 10000 oder 100000 funktioniert es. Hilf mir, dieses Problem zu überwinden.

+6

'999999999.99' entspricht' 9.9999999999E8'. – niyasc

Antwort

1

Sie BigDecimal und toPlainString() dafür nutzen könnten.

BigDecimal dValue= new BigDecimal("999999999.99"); 
System.out.println(dValue.toPlainString()); 

Output:

999999999.99 
+0

Danke, Islam. Auch ich muss diesen Wert durch 2 teilen. Wie man das erreicht. Und der Genauigkeitswert sollte rund sein. Könnten Sie mir helfen –

+0

@MuthuVikki siehe Division '' dValue.divide (neue BigDecimal (2)); '' – muzahidbechara

+0

@MuthuVikki für Präzision '' new BigDecimal ("23.45435436"). SetScale (3, BigDecimal.ROUND_HALF_UP) '' – muzahidbechara

1

können Sie String.format verwenden

System.out.println(String.format("%.2f", dValue));