我有一份清单
List<int> list = new List<int>();
Run Code Online (Sandbox Code Playgroud)
现在我想将它添加到Jagged数组中
int[][] A = new int[][] { list.ToArray() };
Run Code Online (Sandbox Code Playgroud)
这个代码在顶部是可以的,但问题是列表中的所有值都添加在第一个块中!那么,这将解决:
int[] x1 = list.ToArray();
int[][] A = new int[][] { new[] { x1[0] }, new[] { x1[1] }, new[] { x1[2] }, new[] { x1[3] } };
Run Code Online (Sandbox Code Playgroud)
但是(上面的代码)我现在已经手动完成了这个,这只是列表中我列出的前四个索引.
如何将整个列表(所有索引)添加到我的锯齿状数组(使用圆圈或其他方法).
使用投影.
这将遍历列表,创建一个具有当前迭代唯一值的新数组,然后通过创建所有这些数组的数组来结束.
int[][] A = list.Select(i => new[] { i }).ToArray();
Run Code Online (Sandbox Code Playgroud)
顺便说一下,正如[@maccettura]所说,这是一个锯齿状的数组(数组的每个成员本身也是一个数组).