Java における整数と int の区別を理解する
Java プログラミング言語には、整数を表すための 2 つのオプションがあります: プリミティブ型 int とオブジェクト ラッパークラス整数。どちらも数値を格納しますが、その性質と使用法は大きく異なります。
int: プリミティブ型
int はプリミティブ型であり、その変数は整数値を直接保持します。 。 int 変数に値を割り当てると、整数のバイナリ表現がメモリに保存されます。たとえば、次のコードは、値 9 を int 変数に割り当てます。
int n = 9;
プリミティブ型にはメソッドやプロパティがないため、int.parseInt("1") のような式は無効です。
整数: オブジェクト ラッパー クラス
整数、他方hand はオブジェクト ラッパー クラスです。その変数には、整数値をカプセル化する Integer オブジェクトへの参照が格納されます。他のオブジェクト型と同様に、Integer にはメソッドとプロパティがあります。 Integer 変数に値を割り当てると、新しい Integer オブジェクトが作成され、そのオブジェクトへの参照が保存されます。
Integer n = 9;
メソッド呼び出し
メソッド呼び出しは次のように実行できます。 Integer クラスに対して作成されますが、プリミティブ型 int に対しては作成されません。たとえば、parseInt メソッドを使用して文字列を整数に変換できます。
Integer.parseInt("1");
オートボックス化とボックス化解除
Java 5 以降、オートボックス化とボックス化解除によりシームレスにプリミティブ型とそのラッパー クラス間の変換。次の割り当ては前の例と同等です:
int n = Integer.parseInt("1"); // Autoboxing
同様に、次のコードは Integer オブジェクトから整数値を取得します:
int n = Integer.valueOf(9).intValue(); // Unboxing
summary
int と Integer は、Java における整数の異なる表現です。 int は整数値を直接格納するプリミティブ型ですが、Integer は整数値をオブジェクトとしてカプセル化するオブジェクト ラッパー クラスです。 Integer はメソッドとプロパティを提供しますが、int は提供しません。
以上がJava int と Integer: 違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。