黑马程序员技术交流社区

标题: 数组为什么不能强转型呢 [打印本页]

作者: 薛波    时间: 2012-3-30 16:22
标题: 数组为什么不能强转型呢
List<Person> list = new ArrayList<Person>();
Person[]  pro = (Person[])list.toArray();
toArray()返回的是Object数组,把他强转为Person数组为什么不可以呀
执行这句会出现类型转换异常。
为什么数组不能强转呢?
作者: 姜志钦    时间: 2012-3-30 20:27
jdk 1.7就可以了,旧的版本不支持。
作者: 郑洋洋    时间: 2012-3-30 20:42
数组是存基本数据类型的,集合是专门存对象的(存的是对象的引用)
基本数据类型所占内存空间是固定的,你如果强转肯定出问题
作者: 强文何    时间: 2012-3-30 21:37
数组里的内容不是存储在堆内存中的。只是在那做了一个引用。
所以不具体分配内存。强转是针对于基本数据类型而言的。




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