104日記

 ダイエット、投資、読書、心理学など主に雑記

【Java】 ラッパークラスの役割は?

詳解 Javaプログラミング第2版〈VOLUME1〉

 

ラッパークラスの役割

 

1、基本データ型に関する、便利なメソッドを提供すること

 

たとえばIntegerクラスは、int型に関する便利なメソッドを持っている。

parseInt()…数字の文字列をint型に変換する

いずれもstaticなメソッドで宣言されている。
つまりインスタンスを作らなくても利用することができる。

 

2、インスタンスとして扱えるようになる

int a = 10;
Integer b = Integer.valueOf(a);
System.out.println(b);

 

上は、int型の変数をInteger型の変数に変換している。

bは「10」という値を保持しておくだけのシンプルなインスタンス。

結局、aもbも「10」という情報を持っている。

 

じゃあなぜInteger型があるのか?

それは、Javaには基本データ型を利用できないAPIがいくつか存在するため
このような場合は、int型はInteger型を利用する必要がある。

 

たとえば、総称型でも以下のようにラッパークラスを使う。

List<Integer> list = new ArrayList<Integer>();

<>にintの型指定はできない。

 

また、スコープ(ページスコープ、リクエストスコープ、セッションスコープ、アプリケーションスコープ)に保存できるのもインスタンスに限られる。

基本型のままでは保存できない。

 

注意すべき点は、基本データ型と違って

ラッパークラスの初期値はnull になるということ。

初期値を設定していないとnullが返ってきて例外が発する。

 

このラッパークラスについてこちらのサイトがわかりやすかったです。

manga.crocro.com