
今回は…
というテーマでお送りします。

どんなクラスか楽しみです。

目次
【1】 ラッパークラス

ラッパークラスとは…
基本データ型の値を
で…
参照型(オブジェクト)として扱いたい
場合に使用します。
この、ラッパークラスを活用すれば…
基本データ型では使えない
フィールドやメソッドも 使用できます。
✅ 整数などのデータを参照型(オブジェクト)
として扱いたい場合に使用する。
✅ フィールド・メソッドも使用できる。
Javaでは
が用意されています。
int型、char型、boolean型などです。

変数の宣言をして格納したり、演算に使用する
場合には、この基本データ型で充分です。

ただし、プログラミングをしていると
値の他に…
扱いたい場合
も出てきます。

参照型として、扱いたい場合ですね。
この時に使用するのがラッパークラスです。

基本データ型は8種類ありましたね。
これに対応して、ラッパークラスも8種類あります。

基本データ型の先頭を大文字にした識別子が
ラッパークラス名となっています。
ただし…
char型に対する Characterクラス。
…については
違う名前になっていますので
このあたりは押さえておきましょう。

そして、この中で 一番よく使われるのが
です。

int 型の値を持っていて
その他 フィールドやメソッドも用意されています。

今回は、このIntegerクラスを中心に
見ていきましょう。
【2】 ラッパーオブジェクト作成

ラッパーオブジェクトを作成して
値を設定する場合の方法を見ていきましょう。

① コンストラクタを使う(非推奨)
オブジェクトを作るので、このように コンストラクタに
値を渡してインスタンス化する事が考えられます。
例えば Integerクラスの場合には…
引数に int型 を渡すコンストラクタと
String型を渡すコンストラクタが用意されています。
ただし…
この方法は非推奨
となっているんです。

このコースで使っている、バージョン11 の
JavaAPIドキュメントを見ると非推奨と記されています。
また、現在(2023年1月)最新バージョンのJava19 の
JavaAPIドキュメントを見ると…
こんな風に、記載されています。
と…。

という事で、新たにラッパークラスを作る場合には
コンストラクタを使った記述は、しないようにしましょう。
② valueOf() メソッドを使う
Integer クラスの staticメソッド である valueOf() に
int型の値を渡して、Integer型のオブジェクトを取得します。

内部的には、領域の再利用により効率化が図られていますが
あまり深く考えなくても大丈夫です。
メソッドが用意されているので 活用しましょう。
③ オートボクシング変換
これは、自動的に int型の値を Integerオブジェクトに
変換してくれる Javaの機能です。
といいます。
直感的でシンプルですね。使いやすいと思います。


呼び出す事を 考えてしまいますが、非推奨なんですね。
ノートしておきます。

自分でプログラミングする時には
この方法で 行こうと思います。
【3】 基本型への変換

次に、ラッパーオブジェクトを 基本データ型に
変換する方法を 見ていきましょう。

① intValue() メソッドを使う
int i1 = iObj1.intValue();
intValue() メソッドで、値を取得する方法です。
これは、Integer の例ですが…
各ラッパークラスに
同様に、変換メソッドが用意されています。

ですので、これらのメソッドを
活用していきましょう。
② アンボクシング変換
int i1 = iObj1;
これは、自動的に Integerオブジェクトを
int型の値に変換してくれる Javaの機能です。
シンプルに記述できるようになっていますね。

ボクシング変換と、アンボクシング変換
セットで押さえておきましょう。
【4】 フィールド・メソッド

ここでは、利用できる Integerクラスの
フィールドやメソッドを見ておきましょう。

int i2 = Integer.max(40, 50);
int i3 = Integer.MAX_VALUE;
超入門でも出てきた
文字列から int型に変換するメソッド
です。
これは、Integerクラスの staticメソッドとして
定義されているものだったんです。
次が、2つの値の
大きい方を返してくれる メソッド
です。
これも、簡単に使えそうですね。
また、Integerクラスで定義されている定数に
があります。
int型で扱える 最大値 が格納されています。
そして、この他にもメソッドやフィールドは ありますので
JavaAPIドキュメントで見ておくと 良いですね。



シンプルに書けて便利ですね。
【まとめ】

(ラップする)クラス。
✅ 整数などのデータを参照型
(オブジェクト)として
扱いたい場合に使用する。
✅ オートボクシング変換。
(Integerクラスの場合)
✅ アンボクシング変換。
メソッドが準備されている。
今回も、ご覧いただき、ありがとうございます。