2013-10-29 19 views
63

Wie konvertieren wir BigDecimal in Double in Java? Ich habe eine Anforderung, wo wir Double als Argument verwenden müssen, aber wir bekommen BigDecimal, also muss ich BigDecimal in Double konvertieren.Wie konvertiert BigDecimal zu Double in Java?

+6

Wie wäre es mit 'new BigDecimal (2) .doubleValue()' – Matthias

+4

Lesen Sie immer die [Dokumentation] (http://docs.oracle.com/javase/7/docs/api/java/math/BigDecimal.html) bevor Sie eine Frage stellen. Sie werden oft feststellen, dass Ihre Frage beantwortet wird. Siehe ['doubleValue()'] (http://docs.oracle.com/javase/7/docs/api/java/math/BigDecimal.html#doubleValue()). (Tipp: Um die Dokumentation für eine bestimmte Klasse zu finden, suchen Sie einfach den Klassennamen, gefolgt von Java. Um diese Dokumentation zu finden, habe ich beispielsweise "BigDecimal Java" gesucht) – Justin

+1

"Ich habe eine Anforderung, wo wir Double verwenden müssen als Argument "Holen Sie sich die Anforderung geändert. Es macht keinen Sinn, 'BigDecimal' zu verwenden, wenn Sie es nicht End-to-End verwenden. Diese Anforderung beeinträchtigt die Genauigkeit. kann die Einhaltung der Vorschriften gefährden; und kann eine fahrlässige Handlung darstellen. – EJP

Antwort

133

Sie müssen die doubleValue()-Methode verwenden, um den doppelten Wert von einem BigDecimal-Objekt zu erhalten.

BigDecimal bd; // the value you get 
double d = bd.doubleValue(); // The double you want 
4

Verwendung doubleValue Verfahren in BigDecimal Klasse:

double doubleValue() 

Wandelt diese BigDecimal zu einer double.

18

Sie können BigDecimal in double mit .doubleValue() konvertieren. Aber glauben Sie mir, benutzen Sie es nicht, wenn Sie Währungsmanipulationen haben. Es sollte immer direkt an Objekten BigDecimal durchgeführt werden. Präzisionsverlust in diesen Berechnungen sind große Zeitprobleme in währungsbezogenen Berechnungen.

+0

Willkommen! Mach weiter so und genieße deine Zeit hier bei StackOverflow. ;) Diese Frage war jedoch ziemlich alt, und es ist unwahrscheinlich, dass sie die Aufmerksamkeit wiedererlangt. – Unihedron

+2

@Unihedron - das Alter einer Frage ist definitiv kein gutes Maß, wenn eine Frage wieder auffällt oder nicht. Google berücksichtigt das Datum nicht, ich besuche regelmäßig Fragen, die ein paar Jahre alt sind. Und wie Sie sehen können, hat die Antwort bereits 15 Upvotes. – Ev0oD

Verwandte Themen