黑马程序员技术交流社区

标题: int 和 Integer 有什么区别 [打印本页]

作者: 周四川    时间: 2012-4-16 20:38
标题: int 和 Integer 有什么区别
存放整形的数据类型int一般人都在用,不过还有一个类型Integer,也是用于存放整形数据的,他们之间有什么区别呢?求高人解答。。。
作者: 刘旭    时间: 2012-4-16 20:44
int是基本数据类型,Integer是int的包装类,里面定义了一个int数据。Integer类里面还提供了一些使用的方法,详见API。
作者: 高铭    时间: 2012-4-16 20:45
Integer是int的封装类
int是基本数据类型,直接存储数据
Integer是对象,用一个引用指向这个对象

Integer in = new Integer();  可以new对象
int n=1;  这个只是存储数据
作者: 王德南    时间: 2012-4-16 20:58
Int是java的原始数据类型,Integer是java为int提供的封装类,Integer是int的封装类,里面有很多进行处理的静态方法   
Integer是对象而int不是,内存的分配位置也不一样
int是一种基本数据类型,而Integer是相应于int的类类型,称为对象包装。   
实现这种对象包装的目的主要是因为类能够提供必要的方法,用于实现基本数据类型的数值与可打印字符串之间的转换,以及一些其他的实用程序方法;   


作者: 黑马—王宁    时间: 2012-4-16 21:53
int是基本数据类型,Integer是int的包装类,里面定义了一个int数据.而Integer 有许多方法,还有一点就是int不能取nul值,而Integer可以值是null
作者: 胡生蒙    时间: 2012-4-16 21:59
Java中int和Integer的区别:
  int 是基本类型,直接存数值。
  integer是对象,用一个引用指向这个对象。
  1.Java 中的数据类型分为基本数据类型和复杂数据类型
  int 是前者>>integer 是后者(也就是一个类)
  2.初始化时>>
  int i =1;
  Integer i= new Integer(1);(要把integer 当做一个类看)
  int 是基本数据类型(面向过程留下的痕迹,不过是对java的有益补充)
  Integer 是一个类,是int的扩展,定义了很多的转换方法
  类似的还有:float Float;double Double;string String等
  举个例子:当需要往ArrayList,HashMap中放东西时,像int,double这种内建类型是放不进去的,因为容器都是装 object的,这是就需要这些内建类型的外覆类了。
  Java中每种内建类型都有相应的外覆类。
  Java中int和Integer关系是比较微妙的。关系如下:
  1.int是基本的数据类型;
  2.Integer是int的封装类;
  3.int和Integer都可以表示某一个数值;
  4.int和Integer不能够互用,因为他们两种不同的数据类型;
  举例说明
  ArrayList al=new ArrayList();
  int n=40;
  Integer nI=new Integer(n);
  al.add(n);//不可以
  al.add(nI);//可以
作者: 王亚飞    时间: 2012-4-17 10:01
int是面向机器底层的数值类型,是Primitive类型的数据类型,而Integer是int的Warpper类,是面向对象的即OOP的对象类型。int   一般只用在数值计算中,而Integer是用在Java的其它要使用对象的地方,比如Map的Key与Value,List与Set的Element若要保存数值信息都要把int包装成Integer对象使用




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2