如何使用FindLast()查找元素的最后一次出现
本文关键字:最后一次 元素 查找 何使用 FindLast | 更新日期: 2023-09-27 18:26:30
我想找到列表中元素的最后一个出现,并且知道我必须使用FindLast()才能做到这一点。但是,我不知道如何实现和使用这种方法。
这是我的代码:
// the list I need to check
orderedMetricsByNS = (List<Metric>) lmresponse.Metrics.OrderBy(metric => metric.Namespace);
foreach (Metric m in orderedMetricsByNS)
{
// want to use the FindLast() here
}
如何检索类似这样的度量的最后一次出现?感谢
什么是Predicate
?你可以这样使用它:
var item = orderedMetricsByNS.FindLast(m => /* your condition */);
或者,如果你只想找到最后一个项目,请使用Last
方法
var item = orderedMetricsByNS.Last();
顺便说一句,如果你不能从IOrderedEnumerable<T>
转换为List<T>
,你的代码就会失败,你需要使用ToList
方法。
orderedMetricsByNS = lmresponse.Metrics.OrderBy(metric => metric.Namespace).ToList();
您可以使用LINQ:
var last = orderedMetricByNS.LastOrDefault();
http://msdn.microsoft.com/en-us/library/system.linq.enumerable.lastordefault%28v=vs.95%29.aspx