1

intとはどう違いますかInteger?はい、1 つはprimitiveで、もう 1 つはwrapperです。これらを正しく使用するにはどうすればよいでしょうか。

また、次の違いは何ですか:

int i=0;
++i
and 
i++
4

5 に答える 5

6

パート1

一例..Integerのキーとして使用できHashMapますが、intは使用できません。Objectが必要だからです。

したがってint、オブジェクトとして値が必要な場合は、Integerクラスを使用する必要があります。

パート2

++i はインクリメント前 i++ はインクリメント後

例えば

i = 0;
System.out.println(i++) //will print 0 then the i will be 1.

i = 0;
System.out.println(++i) // here i wil be incremented first then print 1.
于 2013-05-30T12:35:46.033 に答える
3

Integerintがプリミティブ データ型のラッパー クラスです。足りないInteger場合に使用します。int例: ジェネリックでは、ジェネリック クラス、メソッド、または変数の型はプリミティブ データ型を受け入れることができません。その場合Integerは救助に来ます。

List<int> list;   //Doesn't compiles
List<Integer> list;  // Compiles

さらに、、、 などの非常に便利なInteger多数の静的メソッドが付属しています。toBinaryStringtoHexStringnumberOfLeadingZeros

于 2013-05-30T12:48:58.540 に答える
1

anIntegerはオブジェクトですが、anintはプリミティブです。Integerそのため、 anおよび aSetまたはそれらの null 参照を持つことができListます。でそれを行うことはできませんint

于 2013-05-30T12:41:02.247 に答える
1

基本的な説明は、intはプリミティブ データ型であり、文字どおりメモリに格納された値にすぎません。Anは Java オブジェクトであり、内部に隠されているバッキングを操作するために呼び出すことができる多くの素敵で便利なメソッドを備えた Class でIntegeran をラップします。これは、や、などのほとんどのプリミティブ データ型と同じです。これはプリミティブと呼ばれます。ボックス化解除は反対で、オブジェクトを取得してバッキング プリミティブを抽出します。intintbooleanBooleancharCharacterBoxing

aを anIntegerに変換するために使用する方法の例を次に示します(ボックス化された an )StringintInteger

String someString = "10";
Integer intObj = Integer.parseInt(someString);
System.out.println(intObj.toString());

一部のデータ型には、他のものよりも役立つメソッドがあることがわかります。興味のあるタイプごとに JavaDoc を確認してください。そこにはたくさんの便利な機能があります。

于 2013-05-30T15:15:04.273 に答える