floatとdoubleはどちらも小数を扱う、浮動小数点型を表すものです。
| float | double |
| 32bit | 64bit |
| 10の38乗まで | 10の308乗まで |
| 6桁の精度 | 15桁の精度 |
表で見比べるとわかるように、簡単に言うと、doubleはfloatの上位互換といえます。
floatとdoubleの使い分けの違い
以下の順で考えればよいかと思います。
- 基本的には
floatを使えば問題ない - 計算が合わない、桁が多い場合は
doubleに代える
じゃあ全部doubleを使えばいいんじゃないの?と思うかもしれませんが、floatのほうがデータ量が少ないので、処理や考える範囲が軽くなるので、無駄にすべてdoubleを使う必要はないということになるかと思います。
(余談ですが、doubleのほうが速くなるという議論をされていたりもしますが、そこまで細かく気にしなくていいかとは思います)
