マンガで分かる Java入門講座

第4章 数値変数と演算子
4-2. byte short int long

整数を格納する4つの型「byte」「short」「int」「long」を紹介します。

● intとメモリサイズ

 intは整数を格納する型です。このintは「-2147483648~2147483647」の範囲の整数を扱えます。

 この数値の範囲には「4294967296」個の整数があります。この個数を16進数で表すと「100000000(0~11111111の範囲)」になります。これは32bit(32個のオンオフのスイッチ)で表現できます。


● byte short int long

 Javaでは使用するメモリ サイズに応じて、「byte」「short」「int」「long」という、4種類の整数を格納する型が用意されています。

 一番よく使われるintは32bitです。それよりも大きな数字を扱うlongは64bitです。また、小さな値を扱うshort(16bit)や、byte(8bit)という型も用意されています。

 これらの型は、使用するメモリ サイズがそれぞれ違います。大きな数値を扱う計算ではlongを使ったり、実行環境にメモリの制約がある場合は、shortやbyteといった小さなサイズの型を使ったりします。

表)使用するメモリ サイズ
サイズ扱う数字
byte8bit(256)-128~127
short16bit(65536)-32768~32767
int32bit(4294967296)-2147483648~2147483647
long64bit(18446744073709551616)-9223372036854775808~
9223372036854775807

● 数字が溢れた場合

 Javaで整数を表す型には範囲があります。この範囲を数値が溢れた場合はどうなるのでしょうか? それは、時計が12時を過ぎると1時になるように、ぐるりと1周します。

 たとえばintでは、2147483647に1を足すと-2147483648になります。また、-2147483648から1を引くと2147483647になります。

 たまに必要になる知識ですので、覚えておいてください。


この講座のマンガ部分は「箱人形マンガ(Box Comic) 」で作成しています。
作成:2013/05/20  更新:2015/08/08  [Permalink]