我似乎不明白为什么下面的方法不起作用。
从周围的阅读来看,它似乎一定与this之类的东西有某种联系。
public class Test<T>
{
public void SomeFunction(IList<IList<T>> ListOfLists)
{
}
}
....
List<List<SimpleClass>> lists = new List<List<SimpleClass>>();
new Test<SimpleClass>().SomeFunction( (IList<IList<SimpleClass>>)lists );我怎样才能要求一个列表实际上是一个列表的列表?我似乎不明白我做错了什么。
谢谢,
发布于 2013-05-16 02:58:36
List<List<SimpleClass>>不是IList<IList<SimpleClass>>。
例如,对于后一种类型,您可以在SimpleClass[]实现IList<SimpleClass>时调用lists.Add(new SimpleClass[5])。但是您不能使用List<List<SimpleClass>>做到这一点,因为每个元素都必须是一个List<SimpleClass>。
不过,这样做是可以的:
List<IList<SimpleClass>> lists = new List<IList<SimpleClass>>();https://stackoverflow.com/questions/16572904
复制相似问题