首先,我搜索了一些问题,但我找不到我需要的东西,也许它不存在哈哈但是我会试一试。我是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
的定义答案 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 });