C#, max, 在列表中找到最大面积的矩形

Guy*_*ito 2 c# max

我有一个矩形列表“collidedrects”我想将面积最大的矩形传递给函数 _playership.Collide() 到目前为止我有......

var item = collidedrects.Max(x => x.Height*x.Width);
_playership.Collide(collidedrects[item]);
Run Code Online (Sandbox Code Playgroud)

我不熟悉 max 以及 C# 中的 => 东西

Ere*_*mez 5

您可以使用Aggregate代替Max来查找最大的矩形:

var largestRect = collidedrects.Aggregate( (r1,r2) => 
    (r1.Height * r1.Width) > (r2.Height * r2.Width) ? r1 : r2);
_playership.Collide(largestRect);
Run Code Online (Sandbox Code Playgroud)