如何将List <List >转换为多维数组
将列表转换为int[][]
类型的数组的最佳方法是什么?
List<List> lst = new List<List>();
int[][] arrays = lst.Select(a => a.ToArray()).ToArray();
LINQ很容易:
lst.Select(l => l.ToArray()).ToArray()
如果你真的想要二维数组( int[,]
,而不是int[][]
),那将更加困难,最好的解决方案可能是使用嵌套for
s。
你可以使用linq轻松完成。
int[][] arrays = lst.Select(a => a.ToArray()).ToArray();
但如果你想要另一种方式,你可以遍历列表并手动生成二维数组。
如何循环嵌套列表
没有库函数可以做到这一点。
你需要用循环来做这件事。
int[][] newlist = new int[lst.Size][]; for (int i = 0; i < lst.Size; i++) { List sublist = lst.ElementAt(i); newlist[i] = new int[sublis.Size]; for (int j = 0; j < sublist.Size; j++) { newlist[i][j] = sublist.ElementAt(j); } }
你去!
- 在Entity Framework Core中启用原始SQL日志记录
- 使用RedirectToAction时如何维护ModelState错误?
- 将值从Usercontrol传递到Form
- 在Fluent中使用时间类型Nhibernate生成exception“无法将类型’System.DateTime’的对象强制转换为’NHibernate.Type.TimeType’
- 调用按钮serveride的click事件
- 如何格式化MVC3中TextBoxFor()显示的DateTime?
- ServiceStack:如何处理错误?
- 使用DirectShow.NET从网络摄像头捕获帧
- 如何从另一个类更改标签? c#windows形成视觉工作室