Java で Int を Integer に変換する
-
Java でオートボクシングを使用して Int を
Integer
に変換する -
Java で整数コンストラクターを使用して Int を
Integer
に変換する -
Java で
Integer.valueOf()
メソッドを使用して Int をInteger
に変換する
このチュートリアルでは、Java でプリミティブ int を Integer
オブジェクトに変換する方法を紹介します。
Java は、プリミティブ int
型または Integer
ラッパークラスのいずれかを使用して整数値を保持します。プリミティブ int を Integer
オブジェクトに変換する場合、Java は valueOf()
や Integer()
コンストラクターなどのいくつかのメソッドを提供します。
この記事では、これらの方法の使用方法を学習します。それでは、始めましょう。
Java でオートボクシングを使用して Int を Integer
に変換する
オートボクシングは、プリミティブ型が暗黙的にオブジェクトに変換される手法です。これを反転させたものをアンボックシングといいます。Java は暗黙的にオートボクシングをサポートしているため、余分なコードを記述する必要はありません。
以下の例では、オートボクシングを使用して int を Integer オブジェクトに変換し、両方の変数が同じ値を保持していることを確認しました。以下のコード例を参照してください。
public class SimpleTesting {
public static void main(String[] args) {
int a = 10;
System.out.println("a = " + a);
Integer i = a; // autoboxing
System.out.println("i = " + i);
}
}
出力:
a = 10
i = 10
Java で整数コンストラクターを使用して Int を Integer
に変換する
Java Integer
クラスは、プリミティブ int 型のオブジェクトを作成するために使用されるラッパークラスです。そのコンストラクターを使用して、int
を Integer
オブジェクトに変換できます。以下の例では、int 値を引数として受け取り、それを Integer オブジェクトとして返す Integer
クラスコンストラクターを使用しました。
public class SimpleTesting {
public static void main(String[] args) {
int a = 10;
System.out.println("a = " + a);
Integer i = new Integer(a);
System.out.println("i = " + i);
}
}
出力:
a = 10
i = 10
Java で Integer.valueOf()
メソッドを使用して Int を Integer
に変換する
これは、Java で int を整数に変換するために使用できるもう 1つの方法です。ここでは、Integer
クラスの valueOf()
メソッドを使用しました。これは、int プリミティブ引数を取り、Integer オブジェクトを返す静的メソッドです。したがって、ここではこのメソッドを使用できます。以下のコード例を参照してください。
public class SimpleTesting {
public static void main(String[] args) {
int a = 10;
System.out.println("a = " + a);
Integer i = Integer.valueOf(a);
System.out.println("i = " + i);
}
}
出力:
a = 10
i = 10
Java で int を整数に変換する方法を見てきましたが、ここでは、変換が成功したかどうかを確認するためのもう 1つのトリックを紹介します。これは、Object
クラスの getClass()
メソッドを使用して結果を検証できることを意味します。このメソッドは、クラスの完全修飾名(パッケージ名を含む)を返します。
getClass()
メソッドを使用して、結果の値が Integer クラスのオブジェクトであるかどうかを確認し、正常に機能することを確認しました。
getSimpleName()
メソッドを使用して、完全修飾名からクラスの名前のみを取得しました。以下の例を参照してください。
public class SimpleTesting {
public static void main(String[] args) {
int a = 10;
System.out.println("a = " + a);
Integer i = Integer.valueOf(a);
System.out.println("i = " + i);
System.out.println(i.getClass().getSimpleName());
}
}
出力:
a = 10
i = 10
Integer
getSimpleName()
メソッドを使用しない場合、出力は以下のようになります。
a = 10 i = 10 class java.lang.Integer