社区
Java SE
帖子详情
对象数组的强型转换问题
caiming250
2007-11-22 03:53:10
ArrayList al = new ArrayList();
......//al 数据写入
String[] strs = (String[]) al.toArray();
这个是错的 为什么?
为什么 在集合里面 又有这种写法是对的呢?
E[] strs = (E[]) new Object[];
...全文
223
10
打赏
收藏
对象数组的强型转换问题
ArrayList al = new ArrayList(); ......//al 数据写入 String[] strs = (String[]) al.toArray(); 这个是错的 为什么? 为什么 在集合里面 又有这种写法是对的呢? E[] strs = (E[]) new Object[];
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
piaopiao11
2007-11-26
打赏
举报
回复
调用al.toArray()返回的是一个Object型的数组。
如:al.add("dd");
al.add(new Object());
Object[] o= al.toArray();
这样是可以的。你将Object[] 强制转String[]当然错误。
al.add("dd");
al.toArray(new String[0]);
这样当然可以,你指定了这个list转为String[]型。
beiouwolf
2007-11-26
打赏
举报
回复
泛型和类不一样,虽然看上去象一个类名
实际上,泛型动作类似于预编译器
所以不要去拿泛型和类来比较,他们完全不同
caiming250
2007-11-24
打赏
举报
回复
谢谢楼上的几位
我开始的 理解是 数组就是不能强型转换 因为 数组对象没有继承关系 也就是Object[] 和 String[] 没有父子关系 所以不能强型转换。
可是当我看到E[] strs=(E[])new Object[]; 的时候又模糊了。
如果说泛型语法不一样的话,那我声明的泛型类被类型擦除了之后 就有这种语句:String[] strs=(String[])new Object[];
aniude
2007-11-24
打赏
举报
回复
1. Object[] toArray();
2. T[] toArray(T[] a);
你查源码可以知道, 2是泛型的,1是返回的是Object[]。
廖骥荣
2007-11-23
打赏
举报
回复
学习了!!
zhanggc1001
2007-11-23
打赏
举报
回复
我也问过,还不知道原因;
只知道源码里的toArray返回的是Object类型,按道理是可以转的
但是不知为什么就是转不了
但是这样也可以转
Object objs[]=al.toArray();
for(Object obj:objs)
System.out.println((String)obj);
beiouwolf
2007-11-23
打赏
举报
回复
String[] strs = (String[]) al.toArray();
当然是错的,没有声明数组大小
E[] strs = (E[]) new Object[];
这个是泛型模板....写法也标准语法不同...
caiming250
2007-11-22
打赏
举报
回复
楼上的 谢谢了哈 我是问为什么 不是怎么做
zhanggc1001
2007-11-22
打赏
举报
回复
你 可以这样
ArrayList<String> al=new ArrayList<String>();
String []strs=new String[al.size()];
al.toArray(strs);
这样就可以转了
网络咖啡
2007-11-22
打赏
举报
回复
数组的类型不能强制转换的,只能强转数组中每个元素的类型
JS学习26:数组对象 之 数组
转换
为字符串
数组中有把数组转化为字符串的方法,部分方法如下表 注意:join方法如果不传入参数,则按照 “ , ”拼接元素 // 数组
转换
为字符串 // 1. toString() 将我们的数组
转换
为字符串 var arr = [1, 2, 3]; console.log(arr.toString()); // 1,2,3 // 2. join(分隔符) var arr1 = ['green', 'blue', 'pink']; console.log(arr1.join()); // green,b.
map() 方法实现 “
对象数组
” 和 “由
对象数组
中的某属性组成的数组” 之间互相转化
需求: 有一个带选择框的人员记录表格,我需要将所有被选择的人员的id数组作为参数,去调用接口。 Table表格实现多选,手动添加一个el-table-column,设type属性为selection即可。 在el-table标签内,添加@selection-change="handleColumnSelect"方法 // 选择人员 handleColumnSelect(val) { this.selectedPersonList = val } 则可以获取到所有被选择的人员数组 然
火山安卓
对象数组
类操作演示
本源码转载自利快云https://www.lkuaiy.com/ 火山安卓
对象数组
类与数组类型
转换
操作介绍
对象数组
类可用于任何类的数组操作,可以将任何类都变成一个数组进行操作,并且也可以非常方便的添加,删除和修改。 一、添加成员 1、首先简单的定义三个文本数组类的变量做演示,在“通知被创建”下面分别给三个变量添加数据。 2、然后定义类型为“
对象数组
类”的变量,然后利用
对象数组
添加成员,分别把三个文本数组变量添加进去,这样就完成了添加操作,可以看出使用方式和...
普通
对象数组
转树形结构
【代码】普通
对象数组
转树形结构。
如何使用 JavaScript 实现类数组对象
转换
为数组
如何使用 JavaScript 实现类数组对象
转换
为数组
Java SE
62,623
社区成员
307,257
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章