A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 李月 中级黑马   /  2012-5-7 11:42  /  1559 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

int 与 Integer的不同之处与相同之处?

以前我一直以为它两是一样的。毕老师说是不一样的。

4 个回复

倒序浏览
int的默认值为0,而Integer的默认值为null,即Integer可以区分出未赋值和值为0的区别,int则无法表达出未赋值的情况

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

回复 使用道具 举报
int是基本数据类型   Integer是java.lang.Object-java.lang.Number-java.lang.Integer 下的一个类
相同点  都可以表示一个整数  不同点  Integer还提供了很多操作这个数的方法
回复 使用道具 举报
int是JAVA的一个基本类型,而Integer是JAVA的一个类,对应 int。因为在某些地方不可以用int而要用Integer。而且基本类型运算的速度也要快。

  int 是变量的基本类型

  Integer 是int的外覆类型

  “基本类型有所谓的‘外覆类(wrapper classes)’如果你想在heap内产生用以代表该基本类型的非原始对象(nonprimitive object),那么外覆类型就可派上用场。”

  引自《Thinking in Java》

  注意:

  1、int和Integer都可以表示某一个数值;

  2. int和Integer不能够互用,因为他们两种不同的数据类型;

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

回复 使用道具 举报
本帖最后由 廖理 于 2012-5-7 12:02 编辑

int类型是基本数据类型,存储在Stack中((面向过程留下的痕迹,不过是对java的有益补充))
Integer是int类型的包装类,Integer是类类型的,需要创建对像之后才能使用,他存储在heap中 
     Integer 是一个类,是int的扩展,定义了很多的转换方法
  类似的还有:float Float;double Double;char Character等
  举个例子:当需要往ArrayList,HashMap中放东西时,像int,double这种内建类型是放不进去的,因为容器都是装 object的,这是就需要通过这些内建类型的包装类来实现了。
  
  (Jdk1.5以后Integer和int之间可以自动转型,例如:Integer i = 3;int x = i;是可以的)
  

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马