【ラッパークラスの基本】オブジェクトの作成と値の設定・値の取得方法!

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

ラッパークラスを使うと、基本データ型の値をラップ(=包み込む)してオブジェクトとして利用できるようになる。

このページではラッパークラスによるオブジェクトの作成や値の設定・取得といった基本的な使い方をまとめてご紹介した。

ラッパークラスをはじめて使うという方は参考にしてほしい。

オブジェクトの作成と値の設定・取得

オブジェクトの生成と値の設定・取得を、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();

サンプルコード

サンプルコードは次の通りだ。

public class JavaApp1 {
    public static void main(String[] args) {
        int num = 1000;
        String strNum = "2000";
        
        Integer iNum1 = new Integer(num);//[1]
        Integer iNum2 = Integer.valueOf(strNum);//[2]
        
        System.out.println("iNum1の値:" + iNum1.toString());//[3]
        System.out.println("iNum2の値:" +iNum2.toString());//[4]
        
        System.out.println("iNum1の値とiNum2の値が等しいか:" +iNum1.equals(iNum2));//[5]
        
        int i = iNum1.intValue();//[6]
        System.out.println("iの値:" + i );//[7]
    
    }
}

実行結果

iNum1の値:1000
iNum2の値:2000
iNum1の値とiNum2の値が等しいか:false

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オブジェクトが生成される。

サンプルコードで確認しよう。

サンプルコード

public class JavaApp2 {
    public static void main(String[] args) {
        boolean bool = true;
        String strBool = "TRUE";
	String strBool2= "TRUUUUUE";
        
        Boolean bool1 = new Boolean(bool);//[1]
        Boolean bool2 = Boolean.valueOf(strBool);//[2]   
     	Boolean bool3 = Boolean.valueOf(strBool2);//[3]
        System.out.println("bool1の値を文字列として出力:" + bool1.toString());//[4]
        System.out.println("bool2の値を文字列として出力:" +bool2.toString());//[5]
        
        System.out.println("bool1とbool2が等しいか:" +bool1.equals(bool2));//[6]   
	System.out.println("bool3:" +bool3.toString());//[7]
    }
}

実行結果

bool1の値を文字列として出力:true
bool2の値を文字列として出力:true
bool1とbool2が等しいか:true
bool3:false

サンプルコードの説明

  • [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ラッパークラスの基本をお伝えした。オブジェクトの作成と値の設定・値の取得方法は概ね理解できただろうか? ぜひ参考にしてほしい。

ラッパークラスの詳細については下記ページも参考に。

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

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

IT講師に興味はありませんか?

・「今までIT講師をやってきたが、更に多くの講義を行いたい」

・「エンジニアとしてやってきたが講師業に魅力を感じている」

・「講師として活躍するためにベースとなる知識を知りたい」

・「様々な分野や言語の講師にチャレンジしてみたい」


という方はぜひIT講師募集のページをご覧ください。


リスキルテクノロジーでは「受講している方々にITを好きになってもらう」ことを目標に、同じ目標に向かって歩んで行ける講師の方を常に探しています。


システム開発やインフラ構築などのエンジニアリング経験を活かし、新入社員などの未経験者や経験の浅い初学者の方々に対してITトレーニングを行っていただくことになります。


テキストやカリキュラムは事前に用意されており、それらを元に講義を進めていくため、IT講師をはじめて実施する方でも安心してトレーニングを実施できます。


IT講師募集のページを見る

SNSでもご購読できます。

コメント

コメントを残す

*

未経験からの育成制度も充実
IT講師に興味はありませんか?

リスキルテクノロジーでIT講師の積極募集を開始! 経験・未経験問わずご応募可能。育成制度で講師スキル向上も目指せます

IT講師に応募する