gpt4 book ai didi

vb.net - 如何在 vb.net 中使用 Linq 选择单个对象

转载 作者:行者123 更新时间:2023-12-02 02:21:03 25 4
gpt4 key购买 nike

我已经对看似简单的 LINQ 问题进行了大量搜索,但我不知道如何从具有指定最小值(或最大值)的集合中获取对象,而不求助于像这样排序:

dim customers= GetCustomers()

dim youngest = (From c in customers
Order By c.age Ascending).ToList.First

此(未经测试的代码)结构工作正常,但必须对整个客户数组进行排序并放入列表中,其唯一目的是提取第一个值。这不是获得最低限度的最佳方式!

请注意,在本例中我想要整个 c 记录,而不是可以像这样完成的客户的最低年龄(典型示例):

dim customers= GetCustomers()

dim youngest = (From c in customers
Select c.age).Min

甚至

dim customers= GetCustomers()

dim youngest = (From c in customers
Select c).Min(Function(x) x.age)

我一生都无法弄清楚如何在不诉诸排序的情况下获取整个对象(甚至索引)...

最佳答案

再说一遍,C# 代码,我不确定在 VB.NET 中是否正确

C#

  Customer youngest = customers.Aggregate((c1, c2) => (c1.age < c2.age) ? c1 : c2);

VB.NET

  dim youngest = customers.Aggregate( Function(ByVal c1, ByVal c2) IF( (c1.age < c2.age) , c1 , c2  ) );

关于vb.net - 如何在 vb.net 中使用 Linq 选择单个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5358598/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com