社区
Java SE
帖子详情
奇怪的类型转换!!!
zhanggc1001
2007-11-21 05:12:33
我定义了一个Employee类
List<Employee> list=new ArrayList<Employee>();
然后用list中添加了几个Employee对象
我想把把list转换成对象数组
Employee []staff1=list.toArray();
为什么这样的转换会抛出类型无法转换的异常呢??想不通
而这样转就可以:
Object obj[]=list.toArray();
for(Object e:obj)
...全文
88
4
打赏
收藏
奇怪的类型转换!!!
我定义了一个Employee类 List list=new ArrayList(); 然后用list中添加了几个Employee对象 我想把把list转换成对象数组 Employee []staff1=list.toArray(); 为什么这样的转换会抛出类型无法转换的异常呢??想不通 而这样转就可以: Object obj[]=list.toArray(); for(Object e:obj)
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hlq11111111
2007-11-21
打赏
举报
回复
list.toArray()的返回值是Object数组类型,定义好了
你可以这样改
Employee [] a=new Employee(list.size());
Employee []staff1=list.toArray(a);
你可以查查JDK说明
pancras
2007-11-21
打赏
举报
回复
public Object[] toArray() {
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);
老廉颇尚能饭否
2007-11-21
打赏
举报
回复
list.toArray();返回的是一个Object[]而不是Employee[]
zhanggc1001
2007-11-21
打赏
举报
回复
System.out.println((Employee)e);
这是为什么啊!!
请高人指教!!
C语言数据
类型转换
(自动
类型转换
+强制
类型转换
)
自动
类型转换
自动
类型转换
就是编译器默默地、隐式地、偷偷地进行的数据
类型转换
,这种转换不需要程序员干预,会自动发生。 1)将一种类型的数据赋值给另外一种类型的变量时就会发生自动
类型转换
,例如 float f = 100; 100是int 类型的数据,需要先转换为float类型才能赋值给变量f。再如 int n = f; f是float类型的数据,需要先转换为int类型才能赋值给变量n。 在赋值运算中,赋值号两边的数据类型不同时,需要把右边表达式的
类型转换
为左边变量的类型,这可能会导致数据失真,或者
C语言
类型转换
-自动
类型转换
、强制
类型转换
、指针
类型转换
数据
类型转换
就是将数据(变量、数值、表达式的结果等)从一种
类型转换
为另一种类型。 自动
类型转换
自动
类型转换
就是编译器默默地、隐式地、偷偷地进行的数据
类型转换
,这种转换不需要程序员干预,会自动发生。 将一种类型的数据赋值给另外一种类型的变量时就会发生自动
类型转换
,例如: float f = 100; 100 是 int 类型的数据,需要先转换为 float 类型才能赋值给变量 f。再如: int n = f; f 是 float 类型的数据,需要先转换为 int 类型才能赋值给变量 n。 在赋值运算中,
C语言
类型转换
详解(自动
类型转换
+强制
类型转换
)
在 C 语言中,数据
类型转换
就是将数据(变量、数值、表达式的结果等)从一种
类型转换
为另一种类型。自动
类型转换
就是编译器默默地、隐式地、偷偷地进行的数据
类型转换
,这种转换不需要程序员干预,会自动发生。程序员也可以自己在代码中明确地提出要进行
类型转换
,这称为强制
类型转换
。
JS中的
类型转换
本章介绍了 JavaScript 的数据类型之间的转换,即强制
类型转换
:包括显式和隐式。强制
类型转换
常常为人诟病,但实际上很多时候它们是非常有用的。作为有使命感的JavaScript 开发人员,我们有必要深入了解强制
类型转换
,这样就能取其精华,去其糟粕。显式强制
类型转换
明确告诉我们哪里发生了
类型转换
,有助于提高代码可读性和可维护性。隐式强制
类型转换
则没有那么明显,是其他操作的副作用。感觉上好像是显式强制
类型转换
的反面,实际上隐式强制
类型转换
也有助于提高代码的可读性。
C语言数据
类型转换
详解
数据
类型转换
就是将数据(变量、数值、表达式的结果等)从一种
类型转换
为另一种类型。 自动
类型转换
自动
类型转换
就是编译器默默地、隐式地、偷偷地进行的数据
类型转换
,这种转换不需要程序员干预,会自动发生。 1 . 将一种类型的数据赋值给另外一种类型的变量时就会发生自动
类型转换
,例如: float f = 150; 150 是 int 类型的数据,需要先转换为 float 类型才能赋值给变量 f。再如...
Java SE
62,623
社区成员
307,257
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章