黑马程序员技术交流社区

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

作者: 李见黎    时间: 2012-3-26 20:28
标题: int和Integer 有什么区别?
int和Integer 有什么区别?在张老师的7k面试视频中有提到,没有弄太明白。
作者: 郑洋洋    时间: 2012-3-26 20:32
int 定义基本数据类型
Integer 定义对象 有很多属性和fafang,看Api
作者: 鲍亚坤    时间: 2012-3-26 20:39
简单来讲:
int,长度不可变
Integer,长度可变。



作者: 许前刚    时间: 2012-3-26 20:52
int是基本数据类型中的值类型;
Integer是对基本数据类型int进行的封装,是类类型,也就是引用类型,比int具有更强大的功能。
int和Integer之间可以相互赋值和运算,因为虚拟机内部自动进行了装箱(值类型转换成引用类型)和拆箱(引用类型转换成值类型)的操作。
作者: 党传才    时间: 2012-3-26 20:53
1.Integer 是对象类型 int是原始类型
2.如果在数据库操作中某数值列允许为null的话,那接受该列数据的类型就只能为
Integer,而不能为int,所以在一般性的持久化对象中尽量少地使用基本类型,
除非确定它不会为空。
3.类可以是null 但是基本数据类型不能为空
作者: 黑马张平    时间: 2012-3-26 21:51
int是基本数据类型中的值类型;Integer是对基本数据类型int进行的封装,是类类型,也就是引用类型,
作者: 许飞翔    时间: 2012-3-26 21:52
int 是基本类型,直接存数值。
integer是对象,用一个引用指向这个对象。
比如:
ArrayList A=new ArrayList();
int n=10;
Integer in=new Integer(n);
A.add(n);//不可以
A.add(in);//可以

作者: 郑涛    时间: 2012-3-26 22:11
int为基本数据类型中的整形,取值范围是2的-31次方到2的31次方减1.Integer是int对应的基本数据类型包装类。把基本数据类型封装成对象的好处是,可以在对象中定义更多的属性和行为对基本数据值进行操作。如取得最大最小值,也就是取值范围可以用Integer.MAX_VALUE() 和Integer.MIN_VALUE()得到。
作者: 杨波    时间: 2012-3-26 22:23
   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-3-26 23:52
int是基本数据类型,integer是引用数据类型的,后者是对前者的封装,




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