2013-10-29 11 views
63

BigDecimalをjavaのDoubleに変換する方法はありますか? Doubleを引数として使用する必要があるという要件がありますが、BigDecimalDoubleに変換する必要があるため、BigDecimalを取得しています。BigDecimalをJavaでDoubleに変換するには?

+6

「新しいBigDecimal(2).doubleValue()」については – Matthias

+4

を参照してください。[documentation](http://docs.oracle.com/javase/7/docs/api/java/math/BigDecimal.html)質問をする前にあなたはあなたの質問に答えていることがよくあります。 ['doubleValue()'](http://docs.oracle.com/javase/7/docs/api/java/math/BigDecimal.html#doubleValue())を参照してください。 (ヒント:特定のクラスのドキュメントを検索するには、クラス名の後にjavaを続けて検索します。たとえば、このドキュメントを見つけるには、 "BigDecimal Java"を検索します) – Justin

+1

"私はDouble引数として "要求を変更してください。あなたがエンドツーエンドを使用しない限り、 'BigDecimal'を全く使用することは何の意味もありません。この要件は精度を低下させます。規制遵守を損なう可能性があります。実行可能な過失を構成する可能性があります。 – EJP

答えて

133

doubleValue()メソッドを使用して、BigDecimalオブジェクトからdouble値を取得する必要があります。

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

使用BigDecimalクラスに存在doubleValue方法:

double doubleValue() 

doubleにこのBigDecimalに変換します。

18

BigDecimaldoubleに変換すると、.doubleValue()を使用できます。しかし、私を信じて、通貨操作をしているならそれを使用しないでください。常にBigDecimalオブジェクトで直接実行する必要があります。これらの計算における正確な損失は、通貨関連の計算で大きな問題になります。

+0

ようこそ!良い仕事を続けて、StackOverflowであなたの時間を楽しんでください。 ;)しかし、この質問はかなり古く、大衆の注目を取り戻すことはまずありません。 – Unihedron

+2

@Unihedron - 質問が注目を集めるか否かを問わず、クエストインの年齢は間違いなく良い方法です。 Googleでは日付を考慮していないため、数年前の質問に定期的にアクセスしています。あなたが見ることができるように、答えにはすでに15のアップボックスがあります。 – Ev0oD

関連する問題