Javaの「int」「Integer」を比較【第1回】
「intはIntegerの略」じゃない? Java初心者が混乱する“根本的な違い”とは
「Java」における「int」と「Integer」は、いずれも文字通り整数を扱うための仕組みだ。ただしintとIntegerには根本的な違いがある。それぞれの基本的な特徴を整理しよう。
プログラミング言語・実行環境の「Java」には、整数を扱うための仕組みとして「int」と「Integer」の2つがある。“字面”だけで判断して「intもIntegerも同じであり、intはIntegerの略に過ぎない」と考えてはいけない。intとIntegerは名称は似ているものの、それぞれの特徴は大きく異なる。どのような違いがあるのか。
実は別物だった「int」と「Integer」 その“端的な違い”はこれだ
Javaにおいて、intは整数を表すための変数の型(数値や文字列といったデータの種類)を指す。intは、Javaが標準で用意する8つの型「プリミティブ型」の1つだ。
Integerは、フィールド(データ)とメソッド(処理)をまとめたオブジェクトとして、intを利用できるようにするクラス(オブジェクトの設計図)を指す。このようにオブジェクトとしてプリミティブ型を利用可能にするクラスを「ラッパークラス」と呼ぶ。
Javaでintの変数を宣言すると、その変数は代入した整数を表すだけだ。それ以外の情報を提供することはない。つまりintについて、以下のことが言える。
- intの変数はフィールドを持たない
- intの変数からメソッドを呼び出すことはできない
- 「equals」を使って、intの変数同士を比較することはできない
- equalsはIntegerで利用できるメソッド。引数として与えたオブジェクトと、メソッドを呼び出したIntegerオブジェクトの値を比較する。
- intの変数は継承ができない
- 継承は、基となるクラスのフィールドやメソッドを引き継いで、新しいクラスを作成すること。
intの変数は、保持する値を計算や比較に使用することしかできない。以下にintの変数を使ったJavaのソースコード例を示す。
int x = 10; // intの変数「x」を宣言し、初期値として10を代入する。
int y = 20; // intの変数「y」を宣言し、初期値として20を代入する。
int sum = x + y; // intの変数「sum」を宣言し、初期値としてxとyを加算した結果を代入する。
int difference = x-y; // intの変数「difference」を宣言し、xからyを減算した結果を初期値として代入する。
boolean flag = (x == y); // boolean(真偽値を扱う型)の変数「flag」を宣言し、xとyが等しい場合は「true」、異なる場合は「false」を代入する。
次回は、intとIntegerの違いを掘り下げる。
TechTarget発 エンジニア虎の巻
米国TechTargetの豊富な記事の中から、開発のノウハウや技術知識など、ITエンジニアの問題解決に役立つ情報を厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.
TechTarget発 エンジニア虎の巻
米国TechTargetの豊富な記事の中から、開発のノウハウや技術知識など、ITエンジニアの問題解決に役立つ情報を厳選してお届けします。
この記事の著者
関連記事
新着ホワイトペーパー PR
-
事例
[株式会社キーエンス] PCが苦手でも自動化できる ポポラマーマなど4事例に学ぶ「ナビ搭載型RPA」活用 -
製品資料
[株式会社クレオ] IT部門を“価値創造組織”へ転換 IT管理プロセスの改革で戦略的リソースを確保 -
製品資料
[株式会社クレオ] Excel管理が限界に――ITサービス管理の脱・属人化と運用高度化を実現する方法 -
製品資料
[株式会社クレオ] 西武グループやイオングループも実践 事例に学ぶ「ITサービスデスク業務」改善 -
製品レビュー
[株式会社クレオ] 「使われないITシステム」から脱却 現場が求める業務改善を実現する方法
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
法務と開発者で「言葉が通じない」問題 トヨタやソニーが語るOSS管理の真実
-
2
なぜ「Gemini 4 Argon」は出遅れたのか? Googleが狙う“逆転のシナリオ”
-
3
「レガシーシステム・老朽化システムの運用課題と刷新」に関するアンケート
-
4
ChatGPTは“検索しまくり”でGeminiは“淡泊”? データが明かすAIの裏側
-
5
セキュリティは「情シス任せ」が過半数 漏えい発生時やSCS評価制度の課題は?
-
6
1回で分かる:仮想マシンを丸ごとバックアップする「VADP」の仕組み
-
7
なぜ「全社配布Copilot」は使われないのか? 失敗に学ぶAI定着
-
8
脱VMwareか、継続か? 仮想化ソフト主要6製品の運用管理と統制機能を徹底比較
-
9
世界PC出荷数が20%急減 情シスを直撃するPC先行調達の反動と価格高騰
-
10
情報漏えいはなぜ繰り返されるのか 今すぐ見直すべき「境界」
ホワイトペーパーランキング PR
-
1
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
2
家庭用Wi-Fiルーターの業務利用は危険? 避けるべき理由と具体的な対策
-
3
システムの保守がモダン化を阻む? 「変えない判断」から脱却する方法とは
-
4
AI駆動攻撃にどう対抗する? 超速の攻撃からエンドポイントを保護する方法
-
5
プログラミング不要で誰でも実現できる、ネットワーク運用管理の自動化とは
-
6
なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは
-
7
東大教授と考える、AI時代の「データ主権」「信頼性」「ガバナンス」の在り方
-
8
Linux初心者でも知らないとまずい「RHEL」「SLES」の違いとは?
-
9
「オンプレミス回帰」せざるを得ない“合理的な理由”
-
10
ランサムウェア攻撃“究極の対策”はこれだ
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー