北大青鸟设计培训:Java的Integer和int有什么区别?

Python012

北大青鸟设计培训:Java的Integer和int有什么区别?,第1张

Java是一种面向对象的编程语言,一般都是一个对象,但是对编程方便或基本数据类型的介绍,为了能够把这些基本数据类型为对象,IT培训http://www.kmbdqn.cn/介绍了Java为每个基本数据类型对应的包装类型(包装类),int类的包装是一个整数,从Java5引入了自动包装/拆包机制,可以相互转换,对应如下:原始类型:boolean,char,byte,short,int,long,float,double包装类型:Boolean,Character,Byte,Short,Integer,Long,Float,Double顺便说一下,Java中只有8种基本数据类型,除了原始类型,其余都是引用类型。

因此,基本的区别在于,Ingeter是一个int封装类,int的起始值为0,而Ingeter的初始值为null。

工作在任何情况下,Integer不等于newInteger。

新对象存储在堆中,而不是通过非打包过程,而非newInteger在常量池中(在方法区域中),它们的内存地址是不同的,所以是false的。

它们都是非new的Integer。

如果数字在-128和127之间,这是true的,否则是false的。

因为在编译Integeri2=128时,Java被编译为Integeri2=128。

函数的作用是缓存-128和127之间的数字。

它们都是new的和false的。

它不是同一个内存地址。

int和Integer(不管是否新)是正确的,因为Integer会自动地将这个int打开。

Java 中整数可以有两种表示形式,一种是 int,另一种是 Integer。

int 在 Java 中叫做基本数据类型(Primitive Data Type),就是简单的一个整数,好比 C 语言中的 int。如果你使用

int a = 3

来定义了一个整数 a 的话,Java 只是在内存中为 a 分配了一个空间,并在这个空间内存储了 3 这个值。

而 Integer 则是一个类,也就是对象,内含了多个方法可以使用。使用 Integer 宣称的变量都是 Integer 这个类的实例。比如你使用

Integer b = 3

定义 b 的话,看起来和使用 int 的效果一样,但实际上 Java 执行的是

Integer b = new Integer(3)

也就是新建了一个 Integer 类的实例 b。

因为 Integer 是一个类,所以有很多自己的方法。比如

b.toString()               // 返回一个代表 a 的值的字符串

b.compareTo(Integer a)     // 比较 a 和 b 的值

b.equals(Integer a)        // 比较 a 和 b 所代表的整数值

还有一些静态(static)的方法比如

Integer.parseInt(String s)  // 把一个字符串 s 转换成整数

等等。而 int 不是对象,所以就没有这些方法了。所以如果你执行

a.toString()

就会报错。

因为 Java 是一个面向对象的语言,所以建议你尽量使用 Integer,把所有东西都当成对象来对待。

意思就是说Integer是一个类,它担供了一些类型的转换方法.

int类型的包装类就是Integer类。

一个典型的运用就是:实现int类型到String类型的转换。

使用具体方法是:

Integer I=new Integer(int i=1)

String str=I.valueOf()