多くのプログラミング言語では、変数を宣言するときに「データ型」を定義する必要がある。Javaもそうだ。
ざっくり言うと、変数に入るデータがどういったものか?を先に決めておく必要があるという意味になる。
このページではJavaのデータ型についてお伝えしよう。
目次
Javaのデータ型
下記ページでお伝えしたように、Javaで変数を使うときには宣言というものが必要だった。
その際に次のように宣言をした。
データ型名 識別子;
int age;
この時のintがデータ型だ。
データ型とは、データの種類のことである。例えば、データには数で表される年齢のような数字で表される情報もあれば、文字で表される名前やメッセージのようなものもある。年齢のように範囲が小さいものもあれば、国家予算のように大きな数字もある。
Javaプログラミングでこうしたデータを扱うために、その種類に応じてデータ型が決まっている。その種類は、大きく分けてふたつある。プリミティブ型と参照型だ。
さらに、その中にいくつかの枝分かれがある。型がいくつかあるということは、それを使って宣言した変数に保存されるデータの種類がそれだけあるということになる。
どんな型がどんなデータを表すのか見てみよう。
プリミティブ型(Primitive Type)
プリミティブ型というのは、Javaプログラミング言語によってあらかじめ定義された型だ。予約されたキーワードによってデータ型ごとに型の名前が付けられている。
では、あらかじめ型名を付けられたプリミティブ型を、その中の整数型、浮動小数点型、論理型の順に見てみよう。
整数型(Integral Type)
整数型は、整数の値を表現している。言うまでもないが小数点の値は含まれない。
例えば、1から10の範囲の整数といえば、「1,2,3,4,5,6,7,8,9,10」の10個の値になる。1.5や2.3は含まれない。整数型の種類には、byte、char、short、int、longがある。それぞれの型とその型に含まれる値の範囲は、次のようになっている。
データ型 |
範囲 |
byte |
-128から127までの整数の値。 |
char |
'\u0000' から'\uffff'までの整数の値。(これは、0から65535である) |
short |
-32768から32767の整数の値 |
int |
-2147483648 から2147483647まで整数の値。 |
long |
-9223372036854775808から9223372036854775807までの整数の値。 |
浮動小数点型(Floating-Point Type)
浮動小数点型は、浮動小数点の値を表している。
例えば、1から10の範囲でいえば、「1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0」の10個の値以外に1.5や2.3などの小数点以下の値を含む数値が含まれる。浮動小数点型の種類には、float、doubleがある。それぞれの型とその型に含まれる値の範囲は、次のようになっている。
データ型 |
説明 |
float |
32ビット単精度小数点 |
double |
64ビット倍精度小数点 |
論理型(boolean Type)
論理型は、真(true)と偽(false)の表記によって示されるふたつの値を持つ論理値を表現する。
データ型 |
説明 |
boolean |
真(true)か偽(false)のどちらかの値。 |
参照型(Reference Type)
参照型には、クラス型、インターフェイス型、型変数、配列型がある。
クラス型とインターフェイス型のデータは、オブジェクトへのポインタであり、配列型のデータは、配列オブジェクトへのポインタである。ポインタというのは、データのある場所を示す情報である。
例えば家がデータならは、そのポインタは住所である。住所が分かれば、家を見つけることは簡単である。
基本型と何が違うかと言うと、基本型はデータそのものを表しているが、参照型はデータのある場所を参照するためのデータであるということだ。
まずは文字列の使い方を覚えるのがわかりやすいだろう。次のページを参考にしていただければと思う。
データ型の使い分け
データ型によって、扱えるデータの範囲が異なる。
扱えるデータの範囲が大きければそれだけメモリを使ことになる。例えば、shortはbyteの2倍のメモリを使う。さらに、intはその2倍、longはさらに2倍である。
メモリが大きさを気にする必要もないほどふんだんにあれば、データ型もそれほど気にする必要はない。しかし、膨大なデータを扱うとか、メモリが限られているとなるとデータの型を気にする必要がある。
メモリが限られていれば、より小さなメモリで済むデータ型を選ぶ必要があるということだ。特に勉強しはじめの頃は適切なデータ型を選ぶようにしたほうがいいだろう。
また、精度という点では小数点を使う必要があれば、整数型ではなく精度に応じてfloatかdoubleの浮動小数点型を選ぶ必要がある。
まとめ
このページではJavaのデータ型についてお伝えをした。簡単なものから使いつつ覚えてしまい、すべて使えるようになっておこう。
https://eng-entrance.com/java-vaiable-datatype
上記ページの「データ型の使い分け」項目の後ろから2行目に誤字があります。
doubleがdubleになっていました。わからないことはないですが、ご参考までにお知らせする次第です。
お知らせいただきありがとうございました。
こちら、修正させていただきました。
引き続き、ご愛読いただけますと幸いです。
整数はintegralではなくintegerではないでしょうか?
いつもご愛読いただきありがとうございます。
名詞はinteger, 形容詞はintegralですので、
用途によって使い分けております。
整数だけを指すのでしたらintegerが適切です。
引き続きご愛読のほどよろしくお願いします。