【发布时间】:2018-05-25 02:13:38
【问题描述】:
代码结构
public interface ListItem
public abstract class Device implements ListItem
public class DeviceList extends ArrayList<Device>
public class ListAdapter extends BaseAdapter{
...
public ArrayList<ListItem> items;
...
}
我想将 DeviceList 传递给 ListAdapter,但不能将 DeviceList 转换为 ArrayList
如果Device实现了ListItem,而DeviceList是Device的数组列表,我不应该可以投吗?
我是这样尝试的:
ArrayList<ListItem> list2 = (ArrayList<ListItem>) device_list;
【问题讨论】:
-
devicelist 是 Device 类型,arraylist 是 listitem 类型
-
是的,但是 Device 实现了 ListItem,所以我应该可以投射它?
标签: java android arraylist casting