doubleに9桁の小数点以下桁数を設定したい場合、これを文字列に変換してからdoubleに戻ってこれを行う必要があります(文字列メソッドは私が設定した唯一のメソッドです)精度)?。いずれにしても、たとえば、私のメソッドが小数点以下9桁のdoubleを返すようにする場合、doubleの精度を設定する従来の方法は何ですか?Javaの精度を設定する
-1
A
答えて
2
を取得します。内部的に倍数は常に同じ方法で格納されますが、もちろんDecimalFormatのようなフォーマッタを使用して、倍数から9つの小数点を返すことができます。
1
利用ビッグ進あなたは、二重の内部表現の間で混乱していると、それはディスプレイの9つの小数点以下の桁数
または
double d = 1.2345672626346;
DecimalFormat df = new DecimalFormat("#.#########");
System.out.print(df.format(d));
1
Javaのプリミティブで精度を制御することはできません。 BigDecimal
を使用する必要があります。 ..
0
をthis excellent tutorialを読むあなたはまた、使用することができます
DecimalFormat df = DecimalFormat.getInstance(Locale.getDefault());
df.setMinimumFractionDigits(9); //sets 9 digits after the '.'
0
String formatedString = String.format("%.2f");
それはどんなO 5桁にpresitionを設定します。
この方法で印刷したい場合は、
System.out.printf("%.5f",123.2342622467);
関連する問題
- 1. C++倍精度/精度