我定义了一个Employee类
List<Employee> list=new ArrayList<Employee>();
然后用list中添加了几个Employee对象
我想把把list转换成对象数组
Employee []staff1=list.toArray();
为什么这样的转换会抛出类型无法转换的异常呢??想不通
而这样转就可以:
Object obj[]=list.toArray();
for(Object e:obj)
List<Employee> list=new ArrayList<Employee>();
然后用list中添加了几个Employee对象
我想把把list转换成对象数组
Employee []staff1=list.toArray();
为什么这样的转换会抛出类型无法转换的异常呢??想不通
而这样转就可以:
Object obj[]=list.toArray();
for(Object e:obj)
解决方案 »
- java实现RC4算法,出现乱码问题,如何解决?
- 求教,java怎么修改文件中的某一个数据
- 怎样才能让关闭按钮起作用,关闭线程。重谢各位大虾。急用。。。
- 请大家给我一点JAVA练习题,我是初学者
- 关于从文件中读入的string急急急,在线等
- 如何獲得當前運行.class文件的路徑
- 我在JBuilder中将java代码编译成本地代码后,是否就可以脱离java环境(在不装JRE的
- ArrayList建立的数组是不是不能用toString来输出?
- 判断一个字符串是否符合日期格式
- 在java中怎么把大写的字母转换成小写呢?(char型的)
- !java最大的bug!(高手进)
- 为什么我的Hibernate不好使呢~~~
这是为什么啊!!
请高人指教!!
Object[] result = new Object[size];
System.arraycopy(elementData, 0, result, 0, size);
return result;
}这是ArrayList的源代码 toArray()方法是没有使用泛型的
不过这个方法可以
public <T> T[] toArray(T[] a) {
if (a.length < size)
a = (T[])java.lang.reflect.Array.
newInstance(a.getClass().getComponentType(), size);
System.arraycopy(elementData, 0, a, 0, size);
if (a.length > size)
a[size] = null;
return a;
}
你可以这样让他泛型
Employee emps[] = new Employee[list.size()];
list.toArray(emps);
你可以这样改
Employee [] a=new Employee(list.size());
Employee []staff1=list.toArray(a);
你可以查查JDK说明