我似乎在围绕C#中的Generic Lists的Generic List的想法时遇到一些麻烦。我认为问题源于<T>参数的使用,我以前没有经验。有人可以提供一个简短的示例来声明一个类,即一个List,其中包含另一个List,但是其中包含的对象的类型不是立即知道的吗?

我一直在阅读有关Generics的MS文档,但不确定是否可以声明List<List<T>>,也不确定如何将<T>参数准确地传递到内部列表中。

编辑:添加信息

在这里声明List<List<T>>是否合法?如果您想知道,我正在构建一个类,使我可以使用ulong作为索引器,并(希望)通过维护列表列表来绕过讨厌的.Net 2GB限制。

public class DynamicList64<T>
    {
        private List<List<T>> data = new List<List<T>>();

        private ulong capacity = 0;
        private const int maxnumberOfItemsPerList = Int32.MaxValue;



        public DynamicList64()
        {
            data = new List<List<T>>();
        }

最佳答案

一个简单的例子:

List<List<string>> myList = new List<List<string>>();
myList.Add(new List<string> { "a", "b" });
myList.Add(new List<string> { "c", "d", "e" });
myList.Add(new List<string> { "qwerty", "asdf", "zxcv" });
myList.Add(new List<string> { "a", "b" });

// To iterate over it.
foreach (List<string> subList in myList)
{
    foreach (string item in subList)
    {
        Console.WriteLine(item);
    }
}

那是您要找的东西吗?还是您要创建一个新的class来扩展其成员为“列表”的List<T>

关于c# - 在C#中创建列表列表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12628222/

10-11 23:19
查看更多