微科社区,轻松开发从此开始! 请登陆 免费注册

微科社区

当前位置:首页 > Java平台 > J2SE >

java中数组可以直接强转为对象吗?大家看这个代

时间:2014-04-11 20:22  浏览:努力统计中...
大家看红字,直接将Object数组转为object对象,这样的用法居然成功了。。表示看不懂啊。。为什么可以这样啊? /**值转换*/ privateListElecSystemDDLelecSystemDDLObjectListToPOList( ListObject[]list){ Li
大家看红字,直接将Object数组转为object对象,这样的用法居然成功了。。表示看不懂啊。。为什么可以这样啊?
/**值转换*/
private List<ElecSystemDDL> elecSystemDDLObjectListToPOList(
List<Object[]> list) {
List<ElecSystemDDL> systemList = new ArrayList<ElecSystemDDL>();
for(int i=0;list!=null && i<list.size();i++){
Object object = list.get(i);
ElecSystemDDL elecSystemDDL = new ElecSystemDDL();
elecSystemDDL.setKeyword(object.toString());
systemList.add(elecSystemDDL);
}
return systemList;
}

数组也是对象。

Object object = list.get(i);
list不是数组,是你在参数中传进来的集合List<Object[]> list,这个集合的泛型就是Object,就是说这个集合就是放的Object类型的对象,list.get(i)是得到集合索引为i的元素,所以没有任何问题。
有疑问吗

数组也是对象。

他这个泛型不是Object[ ]吗?为什么是Object类型呢?

他这个泛型不是Object[ ]吗?为什么是Object类型呢?
看错了。泛型是Object[ ]就是对象数组。List的每个对象也是对象数组。
数组是可以强转对象的,数组也是对象,比如我们创建一个数组也会用到new的:
int[] a =new int[3];
就相当于new一个对象

是东西就能转成Object
    顶一下
    (0)
    0%
    踩一下
    (0)
    0%
    ------分隔线------