ラッパークラスを使うと、基本データ型の値をラップ(=包み込む)してオブジェクトとして利用できるようになる。
このページではラッパークラスによるオブジェクトの作成や値の設定・取得といった基本的な使い方をまとめてご紹介した。
ラッパークラスをはじめて使うという方は参考にしてほしい。
オブジェクトの作成と値の設定・取得
オブジェクトの生成と値の設定・取得を、int型のラッパークラスであるIntegerクラスを例に見ていこう。
オブジェクトの生成
基本データ型の値に対して様々な操作を行うには、まず基本データ型の値を持つラッパークラスのオブジェクトを生成する必要がある。
Integerクラスでは次のように二通りの方法がある。
new Integer(int num )
new Integer(String str )
※オブジェクトの生成はnew演算子を使う。どのような型を引数として渡せるかは使いたいクラスのAPIで「コンストラクタの概要」を見ると記載してあるので参考にしてほしい。
値の設定
値の設定には、生成したオブジェクトを代入する方法と、IntegerクラスのvalueOfメソッドを利用する方法がある。
Integer intNum = Integerオブジェクト
Integer intNum = Integer .valueOf(int num)
Integer intNum = Integer .valueOf (String str)
値の取得
値の取得はラッパークラスのメソッドを使用して行う。例としてInteger型変数の値を int型として返すintValue()メソッドを見てみよう。
書き方はこうだ。
Integer型変数.intValue();
サンプルコード
サンプルコードは次の通りだ。
実行結果
iの値:1000サンプルコードの説明
- [1] 1000で初期化されたint型の変数numを引数に渡してInteger型オブジェクトiNum1を生成。
- [2] 文字列”2000”で初期化されたString型の変数strNumを引数に渡してIntegerクラスのValueOfメソッドにてInteger型オブジェクトiNum2を生成。
- [3] 変数iNum1の値を表示。
- [4] 変数iNum2の値を表示。
- [5] 変数iNum1とiNum2の値が等しいかどうかの比較をIntegerクラスのequalsメソッドを利用して行い結果を表示。
- [6]Integer型のオブジェクトiNum1の値を取得し、int型変数iへ代入。
- [7]変数iの値を表示。
Boolean型の場合
Boolean型の場合、文字列からValueOfメソッドを使用してオブジェクトを生成する際、大文字、小文字に関係なくオブジェクトが生成される。
”true” ”false”以外の文字列だった場合、エラーは発生せずすべてfalseのBooleanオブジェクトが生成される。
サンプルコードで確認しよう。
サンプルコード
実行結果
サンプルコードの説明
- [1] trueで初期化されたboolean型の変数boolを引数に渡してBoolean型オブジェクトbool1を生成。
- [2] 文字列”TRUE”で初期化されたString型の変数strBoolを引数に渡してBooleanクラスのValueOfメソッドを利用してBoolean型オブジェクトbool2を生成。※BooleanクラスのValueOfメソッドを使用する際、大文字、小文字は気にせず代入してよい。”TrUe”でも”True”でもtrueとしてオブジェクトが生成される。
- [3] 文字列” TRUUUUUE”で初期化されたString型の変数strBool2を引数に渡してBooleanクラスのValueOfメソッドを利用してBoolean型オブジェクトbool3を生成。
- [4] 変数bool1の値を表示。
- [5] 変数bool2の値を表示。
- [6] 変数bool1とbool2の値が等しいかどうかの比較をBooleanクラスのequalsメソッドを利用して行い結果を表示。
- [7] 変数bool3の値を表示。
まとめ
このページではJavaラッパークラスの基本をお伝えした。オブジェクトの作成と値の設定・値の取得方法は概ね理解できただろうか? ぜひ参考にしてほしい。
ラッパークラスの詳細については下記ページも参考に。
コメント