我是Linq和c#的新手。 C#专家可以向我解释这段代码应该做什么吗?
var sumPoints = (from p in maxPointList
orderby p.X
group p by p.X into q
select new Point
{
X = q.Key,
Y = q.Sum(x => x.Y)
}).ToList();
答案 0 :(得分:2)
更容易可视化。假设您有以下几点:
X,Y
5, 10
5, 15
6, 4
7, 6
7, 7
4, 2
4, 3
2, 3
将其概括为(作为List
2,3
4,5
5, 25
6, 4
7, 13
答案 1 :(得分:0)
它接受maxPointList中的所有条目,按p.X排序 然后,它构建一个新的字典q,其中p.X的每个值在q中被分组为单个值。 对于每一个(具有相同值的p.X),它都会创建一个新的Point,其中Point.X是p.X值,Point.Y是该值所有p.X的总和。