java里int和Integer什么区别

Integer i=0; 
i是一个对象

int i=3;
i是一个基础变量

Integer i=0;
这种写法如果没记错,在JAVA1.5之前是会报错的,自动的加解包是1.5的新特性
必须写成
Integer i= new Integer(0);
i.intValue()才能提取i的值

使用场合,例如说
往ArrayList里面add,必须add的是Object
而int不是对象,就只能把Integer添加进去.

在Java中要处理的东西几乎都是对象,而基本数据类型(如int,double等定义的变量以及程序中的字母常量)不是对象。Integer就是将int基本数据类型包装为一个对象,在Java中称为装箱(autoboxing),举个例子: 
Integer i = new Integer(10); 
就是将i实例化为对象。Java5.0之后提供了自动装箱功能,跟上边例子效果一样: 
Integer i = 10; 
具体的东西还是建议你找到详细的资料再学习学习。

int i = 0;
Integer j = new Integer(0);
i == j.intValue() true;
在java1.4以及以前版本内 基本类型int double 等是不能直接放入List, Map等的,必须转换成Integer 或者 Double类型才可以



posted on 2016-08-08 11:33  让编程成为一种习惯  阅读(397)  评论(0编辑  收藏  举报