2017-02-22 10 views
-3

私は2つの値を含む1つの文字列を持っています。今私は倍の値と同じ値を抽出したい。 つまり文字列val = "0.0001";javaのStringから同じ形式のdouble値を抽出する方法は?

この値をdoubleとして抽出すると、コードを使用して1.0E-4 という形式が変更されます。double valAsDouble = new Double(val);

また、同じ形式の長い形式と大きい形式と同じ値を抽出したいと考えています。

どうすればいいですか?

+0

かもしれ 'double'sはフォーマットを持っていません。あなたが記述しているのは、ラウンドトリップ 'String-> double-> String'の結果です。それは不正確です。 – EJP

+0

1.0E-4は0.0001と同じですが、異なる表記 – cralfaro

+0

あなたの問題は何ですか? 1.0E-4 * 10000を使用する場合でも、0.0001 * 10000を使用する場合でも、結果は常に同じになります。 – Blip

答えて

1

ダブルは単なるJava表現であり、フォーマットはまったく重要ではありません。

この番号を印刷するときに、特定のレイアウトが必要な場合は、String.formatを使用して簡単に変更できます。

Hereあなたはそれに関するドキュメントを見つけることができます。

たとえば、多分あなたのケースで、これは良い解決策

String myFormattedRepresentation = String.format("%1$,.2f", myDouble); 
関連する問題