我有一个方法,用于构建列表的列表。 我想使用通用的IList<>接口作为返回类型,以减少与具体的List<>类型的耦合。 但是,编译器在类型转换方面存在问题。
public IList<IList<T>> Foo<T>()
{
return new List<List<T>>();
}
为什么这个失败了,而这个却成功:
public IList<T> Foo<T>()
{
return new List<T>();
}
有什么最优雅的方法可以摆脱这个困境吗?