繁体   English   中英

从列表中获取最长的字符串 <Class> 使用LINQ C#

[英]Get the longest string from List<Class> using LINQ C#

在以下列表中,获取name最长字符串的长度的最快方法是:

public class test {
  public int id { get; set; }
  public string name { get; set; }
}

List<test> l = new List<test>();

使用LINQ。

您可以使用LINQ

var longestLenght = l.Max(r => r.name.Length);

不确定是否最快,但是可以通过与他人比较来做到。

如果您想获得长度最长的物品,可以这样做:

var itemFromListWithMaxLength = l
    .OrderByDescending(r => r.name.Length)
    .FirstOrDefault();

或者,您可以根据longestLength检索的longestLength来查询它,例如:

var item = l.FirstOrDefault(r => r.name.Length == longestLenght);

这是线性工作的,除非您对数据有一些特别的了解,否则它可能不会更快。

int maxLength = l.Max(x => x.name.Length);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM