设为首页收藏本站

小牛社区-大数据学习交流社区|大数据免费学习资源

 找回密码
 立即注册!

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 112|回复: 3

区别

[复制链接]

12

主题

25

帖子

50

积分

吃土小白

Rank: 1

积分
50
发表于 2017-4-12 19:58:49 | 显示全部楼层 |阅读模式
int 和 Integer 有什么区别?
回复

使用道具 举报

13

主题

27

帖子

46

积分

吃土小白

Rank: 1

积分
46
发表于 2017-4-12 20:29:12 来自手机 | 显示全部楼层
int 是基本类型,直接存数值    integer是对象,用一个引用指向这个对象    1.Java 中的数据类型分为基本数据类型和复杂数据类型    int 是前者>>integer 是后者(也就是一个类)  Integer 是对象类型 int是原始类型 适用场合有很大的不同 之所以要把int封装成Integer 型 是因为很多方法参数就只接收对象类型(Object) 还比如 范型 就只支持 对象类型  例如往ArrayList里面add,必须add的是Object而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);//可以   补充  String str = "1";  Integer i = Integer.valueof(str);  (1)调用Integer类中的静态方法valueOf(String)  (2)valueOf方法将传入的参数String转化为int型值  (3)返回该值,如果String并不是纯粹由数字构成即无法转化为数字,则抛出NumberFormatException..
回复 支持 反对

使用道具 举报

14

主题

29

帖子

47

积分

吃土小白

Rank: 1

积分
47
发表于 2017-4-12 20:33:31 | 显示全部楼层
Java是一个近乎纯洁的面向对象编程语言,但是为了编程的方便还是引入了基本数据类型,但是为了能够将这些基本数据类型当成对象操作,Java为每一个基本数据类型都引入了对应的包装类型(wrapper class),int的包装类就是Integer,从Java 5开始引入了自动装箱/拆箱机制,使得二者可以相互转换。
回复 支持 反对

使用道具 举报

11

主题

20

帖子

36

积分

吃土小白

Rank: 1

积分
36
发表于 2017-4-15 15:22:32 | 显示全部楼层
Java 提供两种不同的类型:引用类型和原始类型。Int 是java 的原始数据类型,Integer 是java 为int 提供的封装类。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册!

本版积分规则

快速回复 返回顶部 返回列表