如何在java中强制转换泛型列表类型?
好吧,我有一个类客户(没有基类)。
我需要从LinkedList转换到List。有什么干净的方法来做到这一点吗?
只是为了让你知道,我需要把它扔到列表。没有其他类型的可以做到(我正在使用Slim和FitNesse开发一个测试夹具)。
编辑:好的,我想我需要在这里给出代码示例。
import java.util.*;
public class CustomerCollection
{
protected LinkedList<Customer> theList;
public CustomerCollection()
{
theList = new LinkedList<Customer>();
}
public void addCustomer(Customer c){ theList.add(c); }
public List<Object> getList()
{
return (List<? extends Object>) theList;
}
}
因此,根据Yuval A的评论,我终于以这种方式编写了代码。但是我得到这个错误:
CustomerCollection.java:31: incompatible types
found : java.util.List<capture#824 of ? extends java.lang.Object>
required: java.util.List<java.lang.Object>
return (List<? extends Object>)theList;
^
1 error
那么,做这个演员的正确方法是什么呢?