Java

【頻出】JavaのintとIntegerの違いを解説

勉強ちゃん

「int」と「Integer」の違いが分かりますか。
見た目は似ているけど、「何が違うの?」「どっちを使えばいいの?」と迷ったことはありませんか?

この記事では、Java初心者でもわかりやすいように、intInteger の違いを説明します。


intとは?

int は Java の 基本データ型(プリミティブ型) です。
主に整数を扱うときに使われます。

int number = 10;

このように、int はただの「数字」です。
軽くて高速なので、基本的な計算などに向いています。
ただし、null は使えません。


Integerとは?

Integer は Java の クラス(参照型) です。
int をオブジェクトとして扱いたいときに使います。

Integer number = Integer.valueOf(10);

Integer では null を使えるので、データが「ない」状態を表すときに便利です。
また、List<Integer> のようにコレクション(リストなど)で使うことができます。


intとIntegerの違いまとめ

項目int(基本型)Integer(参照型)
型の種類基本データ型クラス型(オブジェクト)
nullを使えるか使えない使える
コレクションで使用できないできる
性能高速・軽い少し重い
主な使いどころ計算や変数に使うnull管理・コレクションなど

オートボクシングとアンボクシング

Java には、intInteger を自動で変換してくれる便利な機能があります。

  • オートボクシングintInteger
  • アンボクシングIntegerint
Integer obj = 5;   // オートボクシング
int num = obj; // アンボクシング

とても便利ですが、注意点があります。
Integernull のときにアンボクシングすると、エラーになります。


まとめ

  • int は軽くて高速。計算や変数におすすめ。
  • Integer はオブジェクトとして使いたいときに便利。
  • オートボクシングは便利だけど、null に注意!

用途に合わせて intInteger を使い分けることが、Javaをうまく使いこなすコツです!

ABOUT ME
自己紹介
自己紹介
職業:Web開発エンジニア
こんにちは!
このブログでは、ITのお仕事で学んだ知識や、 日本での生活で学んだ知識を紹介しています。
お役に立てればうれしいです 😊
記事URLをコピーしました