タグ付けされた質問 「double」

Doubleは、倍精度浮動小数点(多くの場合64ビット)を保持する小数を格納するために使用されるプリミティブデータ型です。


13
小数を倍精度に変換
を使用しTrack-Barて、Formの不透明度を変更します。 これは私のコードです: decimal trans = trackBar1.Value / 5000; this.Opacity = trans; アプリケーションをビルドすると、次のエラーが発生します。 暗黙的にタイプdecimalを変換できませんdouble 私が使って試してみましたtransし、doubleその後Controlは動作しません。このコードは、過去のVB.NETプロジェクトで問題なく機能しました。

5
Math.round(0.49999999999999994)が1を返すのはなぜですか?
次のプログラムで.5は、を除いて、各値が切り捨てられるよりもわずかに小さいことがわかります0.5。 for (int i = 10; i >= 0; i--) { long l = Double.doubleToLongBits(i + 0.5); double x; do { x = Double.longBitsToDouble(l); System.out.println(x + " rounded is " + Math.round(x)); l--; } while (Math.round(x) > i); } プリント 10.5 rounded is 11 10.499999999999998 rounded is 10 9.5 rounded …

26
浮動小数点数を不必要な10進数の0なしで文字列にうまくフォーマットする方法は?
64ビットdoubleは、整数+/- 2 53を正確に表すことができます この事実を考えると、私の最大の整数は符号なし32ビットなので、すべての型の単一型としてdouble型を使用することを選択します。 しかし、今、これらの疑似整数を出力する必要がありますが、問題は、それらも実際のdoubleと混在していることです。 では、これらのdoubleをJavaで適切に印刷するにはどうすればよいですか? 私はを試しましたがString.format("%f", value)、小さい値に対して多くの後続ゼロが得られることを除いて、これは近いです。 これはの出力例です %f 232.00000000 0.18000000000 1237875192.0 4.5800000000 0.00000000 1.23450000 私が欲しいのは: 232 0.18 1237875192 4.58 0 1.2345 確かに、これらのゼロをトリミングする関数を書くことはできますが、それは文字列操作によるパフォーマンスの大幅な低下です。別のフォーマットコードを使ってもっと上手くできますか? 編集 トムEとジェレミーSの回答は、どちらも任意に小数点第2位に四捨五入されるため、受け入れられません。答える前に問題を理解してください。 編集2 これString.format(format, args...)はロケールに依存することに注意してください(以下の回答を参照してください)。


27
double値をxの小数点以下の桁数に丸める
誰かがSwiftで倍精度値をxの小数点以下の桁数に丸める方法を教えてもらえますか? 私が持っています: var totalWorkTimeInHours = (totalWorkTime/60/60) totalWorkTime第二にNSTimeInterval(ダブル)であること。 totalWorkTimeInHours 時間は私に与えられますが、それは私にそのような非常に正確な数の時間量を与えます。例えば1.543240952039 ...... 印刷するときに、たとえば1.543に切り捨てるにはどうすればよいtotalWorkTimeInHoursですか。


6
Double vs. BigDecimal?
いくつかの浮動小数点変数を計算する必要があり、より正確になるため、BigDecimal代わりに使用することを同僚に勧めていますdouble。しかし、私はそれが何であり、どのようにしてそれを最大限に活用するのか知りたいBigDecimalですか?



12
10進数の代わりにdoubleを使用する必要があるのはいつですか?
代わりにdouble(またはfloat)を使用することには、次の3つの利点がありdecimalます。 より少ないメモリを使用します。 浮動小数点演算がプロセッサによってネイティブにサポートされているため、より高速です。 より広い範囲の数値を表すことができます。 しかし、これらの利点は、モデリングソフトウェアで見られるような計算集約型の操作にのみ適用されるようです。もちろん、財務計算などの精度が必要な場合は、doubleを使用しないでください。では、「通常の」アプリケーションの代わりにこれまでにdouble(またはfloat)を選択する実用的な理由はありdecimalますか? 追加のために編集:すべてのすばらしい応答をありがとう、私はそれらから学んだ。 もう1つの質問:一部の人々は、doubleは実数をより正確に表すことができると主張しました。宣言されたとき、私はそれらが通常それらをより正確に表すと思います。しかし、浮動小数点演算が実行されると、精度が(時には大幅に)低下する可能性があるというのは本当のことですか?


18
小数点を含む文字列をdoubleに解析するにはどうすればよいですか?
文字列"3.5"をdoubleのように解析したい。しかしながら、 double.Parse("3.5") 35と double.Parse("3.5", System.Globalization.NumberStyles.AllowDecimalPoint) をスローしFormatExceptionます。 これで、私のコンピューターのロケールはドイツ語に設定されました。コンマが小数点として使用されます。double.Parse()それで何かをし"3,5"、入力として期待する必要があるかもしれませんが、私にはわかりません。 現在のロケールで指定されているとおりにフォーマットされているかどうかにかかわらず、10進数を含む文字列を解析するにはどうすればよいですか?
231 c#  string  parsing  double 



弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.