Javaの整数

アイキャチ画像
2023/04/15
2023/04/15
HU2p3qfH

Javaの整数型の扱い方について、簡単にご紹介します。

Javaで扱える整数について

Javaでは使う型によって扱うことができる、数値の範囲が違います。

チュンすけ

なぜ扱える範囲が違うの?

使い分けることによって、変数にどんなデータが入ってくるかや変数の役割などある程度予想をすることができコードの可読性が上がります。

また、パフォーマンスの面でも余分なメモリを使うことなくアプリなどを作ることができるのです。

ペンタ

早速Javaではどのような整数型があるのか確認しよう!

最も基本的な整数型

まず初めに紹介する整数型は『int型』です!

このint型はJavaで整数を扱い際に最も多く使われる型となっています。

型の宣言は下記の通りです。

int i = 0;

整数を扱うと決まっていて細かいことを気にしなければ、冒頭でお伝えしたような使い分けはせずこの型でいいかもしれないと感じる方もいるかもしれません。

実際コートを書いていても頻繁にint型は使用する他、ある程度扱える範囲も広いため困ることh少ないとボク自身感じています。

int型の扱える整数範囲

先ほど少し触れましたが、Javaの整数型にはそれぞれ扱える範囲が決まっています。

Javaのint型の範囲は下記の範囲です。

最小最大ビット数
-2,147,483,6482,147,483,64732bit

この範囲で何か計算をする場合はint型を使いましょう。

では逆にもっと大きな数値(22億など)を扱いたい場合はどうすればいいでしょうか?

大きな整数を扱いたい場合

先ほど紹介したintはJavaで整数を扱う場合の基本的な型だとすると、今から紹介する型はより大きな数値を扱いたい時に使う型です。

ペンタ

実際に億単位や兆単位の計算をしたい場面はいつか出てくるよね!

そんな時に登場するのがlong型です!

型の宣言は下記の通りです。

long i = 2200000000L;

long型を使う時には、コンパイラーにlong型であることを知らせるために数字の後ろに『L』もしくは『l』をつけます。

※扱う整数がint型の範囲であれば『L、l』はつけなくてもコンパイラーが自動的につけてくれます。

チュンすけ

これを知らなくて初めは苦労したよ、、、

long型で扱える整数範囲

Javaのlong型の範囲は下記の範囲です。

最小最大ビット数
-9,223,372,036,854,775,808 9,223,372,036,854,775,80764bit

いきなり桁が上がりましたね、、、

ざっくり922京というかなり巨大な整数です。

そして驚くことに、この数値がプログラミング言語で扱える整数型の最大値となっておりこれ以上大きな数値は整数として扱うことができません。

※浮動小数点型ならできるかもしれませんが非推奨です。(正確な計算ができないため)

狭い範囲を扱う型

ここまで整数の基本的な型について触れてきましたが、ここからは整数でもちょっと特殊な型たちを紹介しようと思います。

short型

まず紹介するちょっと特殊な型はshort型です!

この型は今まで紹介したint型やlong型と比較するととても狭い範囲の整数型となっています。

型の宣言は下記の通りです。

short i = 0;

short型で扱える整数範囲

Javaのlong型の範囲は下記の範囲です。

最小最大ビット数
-32,76832,76716bit

範囲としてはかなり狭いので、ちょっとした計算でも下手をすると足りなくなってしまいます。

この型は昔のコンピューターのスペックが低かったため存在している型で今はほとんど使われていません。

ペンタ

古いソースコードを改修する時に出てくるかもしてないから覚えるだけ覚えておこう!

byte型

この型も先ほど紹介したshort型同様かなり狭い範囲を扱う型となっています。

型の宣言は下記の通りです。

byte i = 0;

byte型の範囲

Javaのbyte型の範囲は下記の範囲です。

最小最大ビット数
-1281278bit

先ほどのshort型よりさらに狭い範囲のため、一見利用価値がないように感じるかもしれませんが実は個人的にshort型より出現頻度は高いと感じています。

よくあるパターンとしては、データをバイナリデータとして扱いたい、そんな時よく使われています。

ペンタ

バイナリデータとはコンピューターが扱う0と1のデータのことだよ!

ファイルの操作や文字列のエンコーディングなど、バイナリデータは全てのデータの基本的な部分と関わってくるためそういった場面でこのbyte型と出会うことがあるかもしれません。

まとめ

いかがでしたか?

今回はJavaの整数型についての紹介でした。

最後に要点をまとめてみます。

※スマホの方はスライドすることで全て閲覧することが可能です
最小最大ビット数
byte-1281278bit
short-32,76832,76716bit
int-2,147,483,6482,147,483,64732bit
long -9,223,372,036,854,775,808 9,223,372,036,854,775,80764bit
ペンタ

型は扱うデータの役割によって使い分けをしよう!

  • 基本的にはint型
  • intで足りない時はlongを使おう
  • バイナリデータを扱う時はbyteを使うことがある

最低限Javaで数値を扱う時は上記3つを意識しておくといいかと思います。