【Javaラッパークラス】オートボクシングとアンボクシングとは?

オートボクシングとアンボクシング
  • このエントリーをはてなブックマークに追加
  • Pocket

このページではJavaのオートボクシングとアンボクシングについてお伝えしよう。

オートボクシングもアンボクシングもラッパークラスに関する用語だ。

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

オートボクシング、アンボクシングはJava5.0から提供された機能だ。

オートボクシングとは?

コンストラクタやメソッドなどを使わずに基本データ型の値を対応するラッパークラス内に格納するのがオートボクシングだ。

アンボクシングとは?

逆にラッパークラス内に格納された値を取り出して基本データ型として扱うのがアンボクシングである。

下記ページでお伝えした、Integer型でのサンプルコードをオートボクシング利用の記述に変更してみよう。

サンプルコード

それではサンプルコードを見てみよう。

実行結果

サンプルコードの説明

  • [1] new演算子を使用せず、Integer型変数を代入してInteger型オブジェクトiNum1を生成。 → オートボクシング
  • [2]Integerクラスのメソッドを使うことなくint型へ値を代入。→ アンボクシング

オブジェクトの生成を意識せずに記述できるので簡単ではある。ただ自動的に変換されているということは理解しておく必要がある。

また、ラッパークラスは参照型のため、nullが入る可能性がある。nullが入ったラッパークラスオブジェクトをアンボクシング機能にて基本型へ変換すると、プログラムを実行した際にエラー(NullPointerException)が発生するので注意してほしい。

まとめ

このページではオートボクシングとアンボクシングした。ラッパークラスの詳細については下記ページを参考にしてほしい。

  • このエントリーをはてなブックマークに追加
  • Pocket

このページの続きや関連ページは下記から一覧で確認できる。

短期間でエンジニアになる方法

・「まったくの初心者だけどエンジニアになりたい!」

・「プログラマーとして転職をしたい!」

という方はリナックスアカデミーの資料を見てみてください。短期間で未経験からエンジニアになることができるスクールとして15年間選ばれ続けてきた理由やノウハウが載った資料です。

エンジニアの入り口に立つために必要な勉強技術の最新動向本当に使えるIT資格学習に役立つ国からの奨励金などの情報が詰まっています。

無料で2,3日中にお手元にお届けします。


資料を見てみる

SNSでもご購読できます。

コメントを残す

*