使用LINQ查找集合中具有最大属性值的对象
LINQ 提供了便捷的方法来查找集合中具有最大属性值的对象。 让我们来看一个例子:
假设我们有一个 DimensionPair
对象的列表,每个对象都有 Height
和 Width
属性:
<code class="language-csharp">public class DimensionPair { public int Height { get; set; } public int Width { get; set; } }</code>
我们需要找到并返回 Height
属性值最大的对象。
我们可以使用 MaxBy()
方法轻松实现:
<code class="language-csharp">var maxItem = items.MaxBy(x => x.Height);</code>
通过 lambda 表达式 x => x.Height
,我们告诉 LINQ 比较每个对象的 Height
属性,并选择具有最大值的对象。结果赋值给 maxItem
变量。
这种方法具有以下优势:
MaxBy()
只需遍历集合一次,时间复杂度为 O(n)。MaxBy()
可以应用于任何集合,以查找指定属性值最大的对象。以上是如何使用 LINQ 查找具有最大属性值的对象?的详细内容。更多信息请关注PHP中文网其他相关文章!