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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 周四川 中级黑马   /  2012-4-16 20:38  /  2029 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

存放整形的数据类型int一般人都在用,不过还有一个类型Integer,也是用于存放整形数据的,他们之间有什么区别呢?求高人解答。。。

评分

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

查看全部评分

6 个回复

正序浏览
int是面向机器底层的数值类型,是Primitive类型的数据类型,而Integer是int的Warpper类,是面向对象的即OOP的对象类型。int   一般只用在数值计算中,而Integer是用在Java的其它要使用对象的地方,比如Map的Key与Value,List与Set的Element若要保存数值信息都要把int包装成Integer对象使用
回复 使用道具 举报
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);//可以

评分

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

查看全部评分

回复 使用道具 举报
int是基本数据类型,Integer是int的包装类,里面定义了一个int数据.而Integer 有许多方法,还有一点就是int不能取nul值,而Integer可以值是null
回复 使用道具 举报
Int是java的原始数据类型,Integer是java为int提供的封装类,Integer是int的封装类,里面有很多进行处理的静态方法   
Integer是对象而int不是,内存的分配位置也不一样
int是一种基本数据类型,而Integer是相应于int的类类型,称为对象包装。   
实现这种对象包装的目的主要是因为类能够提供必要的方法,用于实现基本数据类型的数值与可打印字符串之间的转换,以及一些其他的实用程序方法;   

评分

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

查看全部评分

回复 使用道具 举报
Integer是int的封装类
int是基本数据类型,直接存储数据
Integer是对象,用一个引用指向这个对象

Integer in = new Integer();  可以new对象
int n=1;  这个只是存储数据

评分

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

查看全部评分

回复 使用道具 举报
int是基本数据类型,Integer是int的包装类,里面定义了一个int数据。Integer类里面还提供了一些使用的方法,详见API。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马