作成日 : 2007/11/01 H.Naito
更新日 : 2007/11/01 H.Naito
データ型一覧
| データ型 |
サイズ |
符号 |
値の範囲 |
通称 |
| 基本データ(プリミティブ)型 |
boolean |
1bit ※1 |
- |
true / false |
真偽型 |
| byte |
8bit |
付 |
-128 ~ 127 |
バイト型 |
| short |
16bit |
付 |
-32768 ~ 32767 |
2バイト整数型 |
| char |
16bit |
無 |
'\u0000' ~ '\uFFFF' ( 0 ~ 65535 ) |
文字型 |
| int |
32bit |
付 |
-2^31 ~ 2^(63-1) |
4バイト整数型 |
| long |
64bit |
付 |
-2^63 ~ 2^(63-1) |
8バイト整数型 |
| float |
32bit |
付 |
約1.4*10^(-45) ~ 3.4*10^38 ※2 |
単精度浮動小数点数型 |
| double |
64bit |
付 |
約1.4*10^(-324) ~ 1.8*10^308 ※2 |
倍精度浮動小数点数型 |
| 参照型 |
- |
- |
- |
- |
- |
※1 boolean のサイズは JVM により変動。
※2 浮動小数点数の値は IEEE754 に準拠した場合
浮動小数点数型の精度
float型では 32ビットサイズ、double型では 64ビットサイズまでしか格納できません。
そのため、コンピュータ内では近似値で値を扱っています。( 俗に言うケタ落ちです )
実験 > サンプルコード
class Sample2_3 {
public static void main( String[] args ) {
System.out.println( 333333333.3333333333f ); ← float 型リテラルを指定
System.out.println( 333333333.3333333333f ); ← double 型リテラルを指定
}
}
実験 > 実行結果
>java Sample3_2
3.33333344E8 ← 精度が落ちて 3.33333344 * 10^8 と表示されている
3.333333333333333E8 ← 精度が落ちて 3.333333333333333 * 10^8 と表示されている
最終更新:2007年11月01日 16:35