int的多维列表C#

时间:2016-01-04 19:45:46

标签: c# list

首先,我搜索了一些问题,但我找不到我需要的东西,也许它不存在哈哈但是我会试一试。我是C#的新手我来自C ++,有很高的学习经验。

在C ++中我有Vector<int> T[];所以我可以创建一个大小不知道的列表;做出这样的事情而不是浪费空间;更确切地说

T[0][....];
T[1][...];

1 2 3 4 5
1 2 3 
2 4 1 5
0 0 0 0 0 0

我试图在C#中做到这一点,它似乎无法工作;到目前为止我试过这个:

 public class myints
    {
        public int x { get; set; }
    }

  public List<myints[]> T = new List<myints[]>();

  T[i].Add(new myints() { x = i });

我希望能够添加内容,然后在Count()中使用for来查看我在T[i]中有多少元素。比如T[i].size() ......这可能吗?

程序说System.Array不包含Add

的定义

1 个答案:

答案 0 :(得分:5)

此示例创建一个列表,其中包含许多不同长度的子列表,应该作为您想要做的事情的良好起点。

List<List<int>> mainlist = new List<List<int>>();
List<int> counter = new List<int>() { 5, 4, 7, 2 };
int j = 0;

// Fill sublists
foreach(int c in counter)
{
    mainlist.Add(new List<int>(c));
    for(int i = 0; i < c; i++ )
        mainlist[j].Add(i);
    j++;
 }

您还可以将初始化列表添加到主列表

List<List<int>> mainlist = new List<List<int>>();
mainlist.Add(new List<int>() { 1, 5, 7 });
mainlist.Add(new List<int>() { 0, 2, 4, 6, 8 });
mainlist.Add(new List<int>() { 0, 0, 0 });