int和Integer之间的区别

intInteger什么区别。 是的,一个是primitive ,另一个是wrapper ,正确使用它们的情况是什么。

还有什么区别:

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

第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. 

Integerint的包装类,它是一种原始数据类型。 当int不能满足时使用Integer 。 例如:在generics中,generics类,方法或变量的类型不能接受原始数据类型。 在那种情况下, Integer来救援。

 List list; //Doesn't compiles List list; // Compiles 

此外, Integer附带了大量的静态方法,比如toBinaryStringtoHexStringnumberOfLeadingZeros等,这些方法非常方便。

如上所述,Integer是一个对象,而int是一个原语。 因此,您可以对Integer及其Set或List进行空引用。 你不能用int做到这一点

当我必须在数据库中存储int值时,我发现这个空引用非常有用。 我使用Integer时可以存储空值。 但是当我使用int时不能这样做。

Integer是一个对象,而int是一个原语。 因此,您可以对Integer及其SetList进行空引用。 你不能用int做到这一点。

基本解释是int是原始数据类型,字面上只是存储在内存中的值。 Integer是一个Java对象,它在一个Class中包含一个int ,它包含许多很好/有用的方法,可以调用这些方法来处理隐藏在里面的后备int 。 这与大多数原始数据类型相同,例如booleanBooleancharCharacter等。这被称为Boxing a primitive。 拆箱是相反的,采取对象并提取支持原始。

这是一个如何使用IntegerString转换为int (盒装到Integer )的示例

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

您会发现某些数据类型比其他数据类型具有更多有用的方法。 查看您感兴趣的每种类型的JavaDoc,那里有很多好东西!