[解決済み] Javaにおけるfloatとdoubleのデータ型
2022-03-03 07:45:19
質問
floatデータ型は単精度32ビットIEEE754浮動小数点で、doubleデータ型は倍精度64ビットIEEE754浮動小数点である。
どのような意味があるのでしょうか?また、doubleの代わりにfloatを使ったり、逆にfloatを使ったりするのはどのような場合ですか?
どのように解決するのですか?
その ウィキペディアのページ を参考にするとよいでしょう。
まとめると
-
float
は32ビットで表現され、符号が1ビット、指数が8ビット、シグニフィカンドが23ビット(または科学記数法から導かれるもの:2.33728*10 12 33728はシグニフィカンド)。 -
double
は64ビットで表現され、符号が1ビット、指数が11ビット、シグニフィカンドが52ビットとなります。
デフォルトでは、Javaは
double
は浮動小数点数を表します(したがって、リテラルな
3.14
は
double
). また、より大きな数値範囲を与えるデータ型でもあるので、私は
float
.
を強制的に使用するライブラリもあります。
float
に収まるほど小さくなることが保証されていない限り、一般的には
float
's
規定範囲
を選択するのがベストです。
double
.
正確さを求める場合 - たとえば、10進数の値が不正確な場合(たとえば
1/10 + 2/10
を行う場合、または
何でも
を通貨で使う場合(例えば、システムで10.33ドルを表現する場合)には
BigDecimal
これは、任意の精度をサポートし、そのような状況をエレガントに処理することができます。
関連
-
[解決済み] java.lang.ClassCastException: java.util.Arrays$ArrayList は java.util.ArrayList にキャストできません。
-
[解決済み] 一部の入力ファイルが非推奨のAPIを使用またはオーバーライドしている
-
[解決済み] JavaでNullPointerExceptionを回避する方法
-
[解決済み] JavaにおけるHashMapとHashtableの違いは何ですか?
-
[解決済み] JavaでArrayListではなくLinkedListを使用するのはいつですか?
-
[解決済み] serialVersionUIDとは何ですか、またなぜそれを使用する必要がありますか?
-
[解決済み] 文字列をfloatやintにパースするにはどうしたらいいですか?
-
[解決済み] .NETでのdecimal, float, doubleの違い?
-
[解決済み] Could not find or load main class "とはどういう意味ですか?
-
[解決済み】doubleに格納できる最大の整数
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 一部の入力ファイルが非推奨のAPIを使用またはオーバーライドしている
-
[解決済み] JOGLまたはLWJGLの既成のプロジェクト
-
[解決済み] 親から継承したメソッドの可視性を下げることができない [重複]。
-
[解決済み] java.util.MissingFormatArgumentException: 形式指定子 '%s' がありません。
-
[解決済み] JavaにおけるMouseListenerとMouseAdapterの違いについて
-
[解決済み] アニメーションGIFの表示
-
[解決済み] publicId と systemId の間に空白が必要です。
-
[解決済み] javaでメソッドを呼び出すプログラムのエラー修正
-
[解決済み] JavaFX 同じパッケージ内なのに「場所が必要です。
-
[解決済み] Spring ApplicationContext - リソースリーク: 'context' が閉じられない