Javaのオートボクシングとは何ですか? 例を挙げて

公開: 2023-01-28

現代の世界では、Java は Android アプリケーションのスクリプトを作成するための有名な選択肢です。 また、機械学習環境、クラウド アプリケーション、IOT テクノロジにも大きな需要があります。 開発者は、Java プログラミングの最近の傾向を完全に理解している必要があります。 この言語は企業内で確固たる存在感を示しているため、Java 開発者にとって有利な職業的展望が保証されています。 Java は、Android モバイル アプリケーション市場だけでなく、バ​​ックエンド市場の分野でも主要なオブジェクト指向言語です。

目次

Java でのオートボクシングの基本:

プログラムをスクリプト化する際、ほとんどのプログラミング言語でプリミティブ データ型が使用されます。 ただし、Java などのオブジェクト指向プログラミング言語では、プリミティブ データ型は一部のシナリオでは効果的ではなく、領域内では不十分です。 プリミティブ データ型の制限を克服するために、ラッパーが使用されます。 この現象はオートボクシングと呼ばれます。 後続のセクションで、Java でのオートボクシングについて詳しく説明しましょう。

無料のテクノロジー コースをチェックして、競争で優位に立ちましょう。

人気のソフトウェア エンジニアリング コースを探す

LJMU & IIITB のコンピューター サイエンスの理学修士号 カリフォルニア工科大学 CTME サイバーセキュリティ証明書プログラム
フルスタック開発ブートキャンプ ブロックチェーンのPGプログラム
フルスタック開発のエグゼクティブ PG プログラム
以下のすべてのコースを表示
ソフトウェア工学コース

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

オートボクシングは、プリミティブ値をラッパー クラスのオブジェクトに変換するプロセスです。 たとえば、int データ型は整数クラスに変換されます。 プリミティブ値が次の場合、オートボクシング機能は Java コンパイラによって実行されます。

  • それぞれのラッパー クラスの変数に割り当てられます。
  • それぞれのラッパー クラスのオブジェクトを使用するメソッドに引数として渡されます。

オートボクシングは、オートボクシング機能の逆です。 ラッパー型オブジェクトをそれぞれのプリミティブ値に変換することを、ボックス化解除と呼びます。 int データ型に変換された Integer オブジェクトの例を考えてみましょう。 Java コンパイラは、ラッパー クラス オブジェクトが次の場合にボックス化解除を実行します。

  • それぞれのプリミティブ型の変数を割り当てます。
  • 対応するプリミティブ型の値を必要とするメソッドに引数として渡されます。

世界トップクラスの大学が提供するソフトウェア開発コースをオンラインで学びましょう。 エグゼクティブ PG プログラム、上級認定プログラム、または修士プログラムを取得して、キャリアを加速させましょう。

需要の高いソフトウェア開発スキル

JavaScriptコース コア Java コース データ構造コース
Node.js コース SQLコース フルスタック開発コース
NFTコース DevOps コース ビッグデータコース
React.js コース サイバーセキュリティコース クラウドコンピューティングコース
データベース設計コース パイソンコース 暗号通貨コース

オートボクシングの詳細:

ボクシングとオートボクシングという用語は、多くの場合、同じ概念を説明するために交互に使用されます。 ただし、2 つの用語には微妙な違いがあります。 「ボクシング」という用語は、プリミティブ データ型をラップしてオブジェクトを形成することを指します。 この概念を理解するために例を考えてみましょう。 以下に記述された Java コード ステートメントを考えてみましょう。

int FirstNumber = 1;

このステートメントでは、変数 'FirstNumber' はプリミティブな int データ型です。 以下のステートメントを使用してオブジェクトに変換できます。

Integer SecondNumber = new Integer(2);

上記のステートメントの変数 SecondNumber は、基本的な int データ型ではありません。 代わりに、整数オブジェクトです。 プリミティブ型のデータをオブジェクトに変換するこのプロセスは、ボックス化と呼ばれます。 このタスクを実行する最も簡単な方法は、int データ型の単一の属性を含むクラスを開発することです。 class 属性には int 型の値のコンストラクタを代入します。 int 値を操作するには、いくつかのメソッドが使用されます。 Java のラッパー クラスを使用して、他のデータ型をオブジェクトに変換できます。

オートボクシングは、明示的に言及せずにコンパイラによって自動的に実行される機能です。

MyList.add(Integer.valueOf(i));

これは、コンパイラによってプログラムに追加された行です。

上記のコード ステートメントでは、valueOf() は静的メソッドであるため、メソッド valueOf() に言及する前に、クラス 'Integer' の名前が指定されています。

ソフトウェア開発に関連する人気記事を読む

Java でデータ抽象化を実装するには? Javaの内部クラスとは何ですか? Java 識別子: 定義、構文、および例
例を使用して OOPS のカプセル化を理解する C のコマンド ライン引数の説明 2022 年のクラウド コンピューティングの機能と特性トップ 10
Java のポリモーフィズム: 概念、型、特徴、および例 Java のパッケージとその使用方法 初心者向け Git チュートリアル: Git をゼロから学ぶ

Javaでのボックス化解除とは何ですか?

プリミティブ データ型をオブジェクトに変換するプロセスを理解したところで、ボックス化の逆の機能を実行するプロセスを見てみましょう。 前述のように、ボックス化解除とは、ラッパー クラス タイプのオブジェクトをそのプリミティブ データ タイプに変換するプロセスを指します。

アンボックス化のプロセスが、プログラムで明示的に言及せずにコンパイラによって自動的に実行される場合、それは自動アンボックス化と呼ばれます。 自動ボックス化解除を理解するために、以下に示す例を考えてみましょう。

ラッパー クラスの詳細:

オートボクシングの例では、変数 I は int データ型であり、オブジェクト Integer はラッパー クラスです。 Java のラッパー クラスは、すべてのプリミティブ データ型で使用できます。 これらのクラスを使用すると、変数をプリミティブ データ型からラッパー クラス型の対応するオブジェクトに変換できます。 ラッパー クラス メソッドは、値の操作に使用されます。 プリミティブ データ型とそれぞれのラッパー クラスを次の表にまとめます。 ラッパー クラスの名前は大文字で始まることに注意してください。

プリミティブ データ型

対応ラッパークラス

バイトバイト
ブール値ブール値
チャーキャラクター
整数整数
浮く浮く
短い短い
長いです長いです
ダブルダブル

Java でのオートボクシングとオート アンボックスのメリット:

  • 自動ボックス化とボックス化解除のプロセスにより、プログラマーは適切に構造化された読みやすいコードをスクリプト化できます。
  • このプロセスにより、ユーザーはプリミティブ データ型とラッパー クラスのオブジェクトを交互に切り替えることもできます。 したがって、明示的な型キャストは必要ありません。

フルスタックのソフトウェア開発である Java について詳しく知りたい場合は、upGrad と IIIT-B のソフトウェア開発のエグゼクティブ PG プログラム – フルスタック開発のスペシャライゼーションをチェックしてください。 、9 つ以上のプロジェクトと割り当て、IIIT-B 同窓生のステータス、実践的な実践的な絶頂プロジェクト、トップ企業での仕事の支援。

この記事を共有したいですか?

将来のキャリアに備える

ソフトウェア工学の修士号に今すぐ申し込む