黑马程序员技术交流社区
标题:
int 和 Integer 有什么区别啊
[打印本页]
作者:
jokerzzz
时间:
2015-3-23 10:49
标题:
int 和 Integer 有什么区别啊
最近在复习基础,看到有道题目是这个,有人知道吗
作者:
黑色救护车
时间:
2015-3-23 12:29
int是一个基本数据类型;Integer是int整型数据所对应的类。这个应该是最基本的不同了。其他的暂时还没想到。要挖嘛,还可以说,Integer还有方法,int没有之类的,不过感觉不靠谱。
作者:
wkz_crystal
时间:
2015-3-23 14:39
支持2楼的的说法……Integer其实就是引用数据类型操作类……
作者:
张金龙
时间:
2015-3-23 14:51
int 基本数据类型,integer是引用数据类型
作者:
longlongint
时间:
2015-3-23 16:43
int 基本数据类型,integer是引用数据类型,也可是说是int类型的封装类
作者:
福娃51zx
时间:
2015-3-24 14:34
java提供两种不同的类型:引用类型和原始类型(或内置类型)。int是Java的原始数据类型,Integer是Java为int提供的封装类。Java为每个原始类型提供了封装类。原始类型封装类,例如:Boolean是boolean的封装类。
作者:
奋斗的黑马
时间:
2015-3-24 17:29
java int与integer的区别
int与integer的区别从大的方面来说就是基本数据类型与其包装类的区别:
int 是基本类型,直接存数值,而integer是对象,用一个引用指向这个对象
1.Java 中的数据类型分为基本数据类型和复杂数据类型
int 是前者而integer 是后者(也就是一个类);因此在类进行初始化时int类的变量初始为0.而Integer的变量则初始化为null.
2.初始化时:
int i =1;Integer i= new Integer(1);(要把integer 当做一个类看);但由于有了自动装箱和拆箱
使得对Integer类也可使用:Integer i= 1;
int 是基本数据类型(面向过程留下的痕迹,不过是对java的有益补充),Integer 是一个类,是int的扩展,定义了很多的转换方法
类似的还有:float Float;double Double;string String等,而且还提供了处理 int 类型时非常有用的其他一些常量和方法
举个例子:当需要往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);//可以
并且泛型定义时也不支持int: 如:List<Integer> list = new ArrayList<Integer>();可以 而List<int> list = new ArrayList<int>();则不行
总而言之:如果我们定义一个int类型的数,只是用来进行一些加减乘除的运算or作为参数进行传递,那么就可以直接声明为int基本数据类型,但如果要像
对象一样来进行处理,那么就要用Integer来声明一个对象,因为java是面向对象的语言,因此当声明为对象时能够提供很多对象间转换的方式,与一些常用
的方法。
作者:
奋斗的黑马
时间:
2015-3-24 17:30
还有就是,,每一个基础类型,都有相对应的包装类!!!
作者:
爱做梦的年纪
时间:
2015-4-13 18:04
Integer 是int的包装类
作者:
m-勇敢的心
时间:
2015-4-13 22:10
一个是数据类型 一个是它的封装类 这个 看API都有的吧
作者:
hui1130
时间:
2015-4-13 23:34
简单的说:int 基本数据类型,integer是引用数据类型
作者:
最初的バ梦想
时间:
2015-4-15 21:52
int与integer的区别其实以前我也不太懂,最近听了老师的课程以后算是彻底弄懂了。下面是我对int 和Internet的关系,如果有不对的地方可以相互交流交流,呵呵。
int与integer的区别从大的方面来说就是基本数据类型与其包装类的区别:
int 是基本类型,直接存数值,而integer是对象,用一个引用指向这个对象
1.Java 中的数据类型分为基本数据类型和复杂数据类型
int 是前者而integer 是后者(也就是一个类);因此在类进行初始化时int类的变量初始为0.而Integer的变量则初始化为null.
2.初始化时:
int i =1;Integer i= new Integer(1);(要把integer 当做一个类看);但由于有了自动装箱和拆箱 (http://www.cnblogs.com/shenliang123/archive/2012/04/16/2451996.html),
使得对Integer类也可使用:Integer i= 1;
int 是基本数据类型(面向过程留下的痕迹,不过是对java的有益补充),Integer 是一个类,是int的扩展,定义了很多的转换方法
类似的还有:float Float;double Double;string String等,而且还提供了处理 int 类型时非常有用的其他一些常量和方法
举个例子:当需要往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);//可以
并且泛型定义时也不支持int: 如:List<Integer> list = new ArrayList<Integer>();可以 而List<int> list = new ArrayList<int>();则不行
总而言之:如果我们定义一个int类型的数,只是用来进行一些加减乘除的运算or作为参数进行传递,那么就可以直接声明为int基本数据类型,但如果要像
对象一样来进行处理,那么就要用Integer来声明一个对象,因为java是面向对象的语言,因此当声明为对象时能够提供很多对象间转换的方式,与一些常用
的方法。自认为java作为一们面向对象的语言,我们在声明一个变量时最好声明为对象格式,这样更有利于你对面向对象的理解。希望可以帮到你:handshake
作者:
乌卡卡
时间:
2015-7-2 14:17
最初的バ梦想 发表于 2015-4-15 21:52
int与integer的区别其实以前我也不太懂,最近听了老师的课程以后算是彻底弄懂了。下面是我对int 和Interne ...
回答的很好,我也知道,但写不出来
作者:
tsldxszd
时间:
2015-7-22 07:48
好吧 算是学习了
作者:
jsyswa
时间:
2015-7-29 17:11
学习了,很多回答
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2