Javaの「int」「Integer」をソースコードで比較 「初期化」の違いとは?Javaの「int」「Integer」を比較【第3回】

「int」「Integer」は、どちらも「Java」で整数を扱うための仕組みだ。「初期化」における両者の違いを、実際のソースコードを交えて解説する。

2023年07月30日 09時30分 公開
[Cameron McKenzieTechTarget]

 プログラミング言語・実行環境の「Java」のプログラムで整数を扱うには、「int」または「Integer」のいずれかの仕組みを使うことになる。intは「型」(数値や文字列といったデータの種類)、Integerは「クラス」(データと処理をまとめたオブジェクトの設計図)という定義上の違いはあるものの、これだけでは何が違うのかをイメージしにくい。ソースコードを見れば、両者の違いをより理解しやすくなる。

intとIntegerの「初期化」の違いをソースで比較

 変数やオブジェクトを利用する際は、初期化という作業が必要になる。intの変数を初期化する方法は、変数を宣言して代入することしかない。ソースコード例は以下の通りだ。

int kilo = 1000; // intの変数「kilo」を宣言し、数値「1000」を代入することで初期化する。

 Integerのオブジェクトは、以下に示す3つの手段で初期化できる。

valueOf

 「valueOf」は、文字列を数値に変換するメソッド(オブジェクトにおける処理)だ。valueOfを使った初期化の例を以下に示す。

Integer dozen = Integer.valueOf("20"); // Integerのオブジェクト「dozen」を宣言し、valueOfを使って文字列「20」を数値に変換することで初期化する。

オートボクシング

 「プリミティブ型」(Javaが標準で用意する8つの型)の変数を、対応する「ラッパークラス」(オブジェクトとしてプリミティブ型を利用可能にするクラス)のオブジェクトに自動的に変換する機能を「オートボクシング」と呼ぶ。オートボクシングを使った初期化の例は以下の通りだ。

Integer century = 100; // Integerのオブジェクト「century」を宣言し、オートボクシングを使って数値「100」を代入することで初期化する。

コンストラクタ

 「コンストラクタ」は、演算子「new」を使ってクラスからオブジェクトを生成する際に、自動的に呼び出すメソッドを指す。コンストラクタを使った初期化は以下のようになる。

Integer number = new Integer(10); // Integerのオブジェクト「number」を宣言し、コンストラクタを使って引数「10」を初期値にして初期化する。

 次回は処理負荷の視点から、intとIntegerを比較する。

関連キーワード

Java | プログラミング


TechTarget発 エンジニア虎の巻

米国TechTargetの豊富な記事の中から、開発のノウハウや技術知識など、ITエンジニアの問題解決に役立つ情報を厳選してお届けします。

Copyright © ITmedia, Inc. All Rights Reserved.

髫エ�ス�ス�ー鬨セ�ケ�つ€驛「譎擾スク蜴・�。驛「�ァ�ス�、驛「譎冗樟�ス�ス驛「譎「�ス�シ驛「譏懶スサ�」�ス�ス

製品資料 株式会社ジャストシステム

ノーコードで基幹システム運用を改善、解決できる課題やツール選びのコツを解説

基幹システム運用の課題を解消すべく、ノーコード開発ツールを導入する動きが加速している。数あるツールの中からどのようにツール選定を進めたらよいのか、またどのような課題を解決できるのか、具体的なツールも含めて解説する。

事例 株式会社ジャストシステム

ベンダーに依存しないシステムを自社で開発、東亜建設工業に学ぶその推進方法

老朽化したシステムの刷新に向けノーコード開発ツールを導入した「東亜建設工業」。その活用により、ベンダーに依存することなく柔軟性と持続可能性の高いシステムの構築を推進できる体制を実現している。同社の取り組みを詳しく紹介する。

事例 株式会社ジャストシステム

ノーコード開発で大幅な業務効率化を実現、「八千代工業」の取り組みとは?

社内業務の徹底的な効率化を目指す「八千代工業」。最初に導入したRPAでは、紙に依存した業務への対応は難しかったが、これらをデジタル化するためにノーコード開発ツールを使ってアプリを開発し、大きな成果を挙げている。

製品資料 株式会社ジャストシステム

IT人材不足を補うノーコード開発、全社DXにつながるツール選定の4つのポイント

IT技術の重要性が高まる一方、IT人材不足が加速している。その不足を埋めるため、自社の業務システムをノーコードで開発する動きが広がっているが、ノーコード開発を導入する際には、将来的な全社DXを考慮してツールを選ぶ必要がある。

製品資料 株式会社ジャストシステム

プロコード/ローコード開発による業務のシステム化、作業の属人化をどうする?

業務効率化に有効なシステム化だが、プロコードやローコードによる開発では場合によって複雑なコーディングが必要となり、かえって新たな課題を生みかねない。そこで登場したのが、スキル不要で使えるノーコード開発ソリューションだ。

驛「譎冗函�趣スヲ驛「謨鳴€驛「譎「�ス�シ驛「�ァ�ス�ウ驛「譎「�ス�ウ驛「譎「�ソ�ス�趣スヲ驛「譎「�ソ�スPR

From Informa TechTarget

お知らせ
米国TechTarget Inc.とInforma Techデジタル事業が業務提携したことが発表されました。TechTargetジャパンは従来どおり、アイティメディア(株)が運営を継続します。これからも日本企業のIT選定に役立つ情報を提供してまいります。

Javaの「int」「Integer」をソースコードで比較 「初期化」の違いとは?:Javaの「int」「Integer」を比較【第3回】 - TechTargetジャパン システム開発 髫エ�ス�ス�ー鬨セ�ケ�つ€鬮ォ�ェ陋滂ソス�ス�コ�ス�ス

TechTarget驛「�ァ�ス�ク驛「譎「�ス�」驛「譏懶スサ�」�趣スヲ 髫エ�ス�ス�ー鬨セ�ケ�つ€鬮ォ�ェ陋滂ソス�ス�コ�ス�ス

ITmedia マーケティング新着記事

news026.png

「パーソナライゼーション」&「A/Bテスト」ツール売れ筋TOP5(2025年4月)
今週は、パーソナライゼーション製品と「A/Bテスト」ツールの国内売れ筋各TOP5を紹介し...

news130.jpg

Cookieを超える「マルチリターゲティング」 広告効果に及ぼす影響は?
Cookieレスの課題解決の鍵となる「マルチリターゲティング」を題材に、AI技術によるROI向...

news040.png

「マーケティングオートメーション」 国内売れ筋TOP10(2025年4月)
今週は、マーケティングオートメーション(MA)ツールの売れ筋TOP10を紹介します。