link中怎么将二维数组转化为字典呢?不通过循环
link中如何将二维数组转化为字典呢?不通过循环
link中如何将二维数组转化为字典呢?不通过循环
------解决思路----------------------
https://code.msdn.microsoft.com/101-LINQ-Samples-3fb9811b
------解决思路----------------------
虽然linq中有ToDirectory方法可以将数据源转化为字典,但是LINQ没法直接迭代二维数组,得这么写(假设维数组有两列,并且第一列作为key不重复,否则需要先分组或者去重)
IEnumerable<int[]> GetData(this int[,] data)
{
for (i = 0; i < data.GetLength(1); i++)
yield return new int[] { data[i, 0], data[i, 1] };
}
使用
var dict = arr.GetData().ToDictionary(x => x[0], x => x[1]);
link中如何将二维数组转化为字典呢?不通过循环
------解决思路----------------------
https://code.msdn.microsoft.com/101-LINQ-Samples-3fb9811b
------解决思路----------------------
虽然linq中有ToDirectory方法可以将数据源转化为字典,但是LINQ没法直接迭代二维数组,得这么写(假设维数组有两列,并且第一列作为key不重复,否则需要先分组或者去重)
IEnumerable<int[]> GetData(this int[,] data)
{
for (i = 0; i < data.GetLength(1); i++)
yield return new int[] { data[i, 0], data[i, 1] };
}
使用
var dict = arr.GetData().ToDictionary(x => x[0], x => x[1]);