Javaはオブジェクト指向言語なので、本来はデータをオブジェクトで表現すべきである。しかし、使い勝手や実行速度の理由から基本的な数値データを扱うプリミティブ型が用意されている。
Javaの基本データ型を次に示します。
型 | 種類 | サイズ | 範囲 |
---|---|---|---|
boolean | ブール | 1 bit | true または false |
byte | 符号付き整数 | 8 bit | -128 ~ 127 |
char | Unicode文字 | 16 bit | 0 ~ 65535 |
short | 符号付き整数 | 16 bit | -32,768 ~ 32,767 |
int | 符号付き整数 | 32 bit | -2,147,483,648 ~ 2,147,483,647 |
long | 符号付き整数 | 64 bit | -9,223,373,036,854,775,808 ~ 9,223,372,036,854,775,807 |
float | 単精度浮動小数 | 32 bit | ±3.40282347E+38 ~ ±1.40239846E-45 |
double | 倍精度浮動小数 | 64 bit | ±1.79769313486231570E+308 ~ ±4.94065645841246544E-324 |
Javaにおけるbooleanは、ブール型を表わすプリミティブ型である。
boolean型の使用例を次に示す。
boolean x = true;
boolean y = false;
Javaにおけるbyteは、8ビットの符号付き整数を表わすプリミティブ型である。
byte型の使用例を次に示す。
byte x = 127;
byte y = -128;
Javaにおけるcharは、16ビットの符号無し整数を表わすプリミティブ型である。
Javaでは文字をUnicodeのUTF-16で表しているので、char型は文字を表すのにも用いられている。
char型の使用例を次に示す。
char x = 'A';
char y = 0x0041;
Javaにおけるshortは、16ビットの符号付き整数を表わすプリミティブ型である。
short型の使用例を次に示す。
public class Example {
short prop;
public Example() {
prop = 0;
}
public short getProp() {
return prop;
}
public void setProp(short prop) {
this.prop = prop;
}
}
Javaにおけるintは、32ビットの符号付き整数を表わすプリミティブ型である。
int型の使用例を次に示す。
public class Example {
int prop;
public Example() {
prop = 0;
}
public int getProp() {
return prop;
}
public void setProp(int prop) {
this.prop = prop;
}
}
Javaにおけるlongは、64ビットの符号付き整数を表わすプリミティブ型である。
long型の使用例を次に示す。
public class Example {
long prop;
public Example() {
prop = 0;
}
public long getProp() {
return prop;
}
public void setProp(long prop) {
this.prop = prop;
}
}
Javaにおける float は、IEEE 754で規定されている単精度の浮動小数点数を表すデータ型である。
部 | ビット数 |
---|---|
符号部 | 1 bit |
指数部 | 8 bit |
仮数部 | 23 bit |
float型の使用例を次に示す。
float x = 3.14;
float y = 3.14F;
float z = 3.14f;
Javaにおける double は、IEEE 754で規定されている倍精度の浮動小数点数を表すデータ型である。
部 | ビット数 |
---|---|
符号部 | 1 bit |
指数部 | 11 bit |
仮数部 | 52 bit |
double型の使用例を次に示す。
double x = 3.14;
double y = 3.14D;
double y = 3.14d;
プリミティブ型ラッパークラスは、プリミティブ型の値をオブジェクト内に包んだ(wrap)クラスであり、プリミティブ型の処理に役立つ定数やメソッドを提供する。
プリミティブ型 | ラッパークラス |
---|---|
boolean |
java.lang.Boolean |
byte |
java.lang.Byte |
char |
java.lang.Character |
double |
java.lang.Double |
float |
java.lang.Float |
int |
java.lang.Integer |
long |
java.lang.Long
|
short |
java.lang.Short |