我得到了以下linq查询:
var invadersOrderedInColumns = from i in invaders
group i by i.GetPosition().X;
这将命令入侵者具有相同的X位置。接下来我要做的是从每个列中检索具有最高Y值的入侵者。
想象一下,如果在下面的图像中,每个入侵者都是一个黑块。这将表示上述linq查询之后的入侵者。每个X=值都是关键。
现在,从这些组(列)中,我想得到Y位置最高的入侵者(当您查看图片时,每个列的底部入侵者):
如何使用Linq查询完成这一任务?
发布于 2011-02-28 22:58:21
我不太关心查询语法,但在扩展方法语法中,它看起来如下所示。
var invadersOrderedInColumns = invaders
.GroupBy(d => d.GetPosition().X)
.Select(d => d.OrderByDescending(y => y.GetPosition().Y).First());
https://stackoverflow.com/questions/5148411
复制相似问题