黑马程序员技术交流社区

标题: 为什么int[]不能转换成Object[] [打印本页]

作者: xplcc    时间: 2014-9-17 10:18
标题: 为什么int[]不能转换成Object[]
一切类都是object的子类,看看下面的例子

int i = 1;
int[] a = new int[3];
Object c = i;//成立
Object[] d = a;//不成立
Object e = a;//成立

造成这种原因的是jdk1.5以后出现的新特性:autobox(自动装箱)。int是基本数据类型,
他本不属于object子类,在强转的时候会自动装箱成Integer,那么Object c = i;就会成
立。而int一维数组是一个类,不是基本类型,是不会自动包装成Integer[],所以他不可
能转换成Object数组,但它却是object的子类。





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