ホームページ  >  記事  >  Java  >  Java の int と Integer: プリミティブとオブジェクト — 違いは何ですか?

Java の int と Integer: プリミティブとオブジェクト — 違いは何ですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-24 11:27:11401ブラウズ

Java's int and Integer: Primitive vs. Object—What's the Difference?

プリミティブとオブジェクト: Java の整数と int を理解する

Java では、int と Integer の違いは、その基本的な性質に由来します。

int: プリミティブ データType

int は、数値を直接保持するプリミティブ データ型です。これは固定メモリ空間を占有し、整数のバイナリ表現を格納します。

Integer: ラッパー クラス

Integer は、一方、ラップするラッパー クラスです。 int 値。これは、独自のメソッドとフィールドを備えた Java の他のオブジェクトと同様に動作します。整数変数は、整数オブジェクトへの参照を保存します。

インスタンス化と代入

示されているコードは、この違いを強調しています。

int n = 9; // Assigns the value 9 to the primitive variable n

この場合、 n は整数値を直接格納します9.

// This code won't compile because Integer expects a reference to an object
Integer n = 9;

メソッド呼び出し

Integer などのラッパー クラスは、ラップされた値の操作を可能にするメソッドを提供します。例:

Integer.parseInt("1") // Parses a string into an int (returns an int)

int はクラスではないため、parseInt のようなメソッドはありません。

// This code won't compile
int.parseInt("1")

オートボックス化とボックス化解除

ラッパー クラス階層

Java のすべてのプリミティブ型には、同等のラッパー クラスがあります: Byte (byte) )、Short (short)、Integer (int)、Long (long)、Boolean (boolean)、Character (char)、Float

ラッパー クラスは Object クラスを拡張し、オブジェクト参照が必要なコレクションやジェネリックで使用できるようにします。

以上がJava の int と Integer: プリミティブとオブジェクト — 違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。