c# – 如何搜索LinkedList集合?

c# – 如何搜索LinkedList集合?,第1张

概述我有一个LinkedList< T>对象,其中T是具有名称为ID的属性的任意对象.我想使用ID作为搜索条件搜索我的收藏. 现在我知道我可以使用while循环进行搜索: LinkedListNode<MyObject> element = myObject.First;while (element != myObject.Last){ if (element.Value.ID == my 我有一个linkedList< T>对象,其中T是具有名称为ID的属性的任意对象.我想使用ID作为搜索条件搜索我的收藏.

现在我知道我可以使用while循环进行搜索:

linkedListNode<MyObject> element = myObject.First;while (element != myObject.Last){    if (element.Value.ID == myID)    break;    element = element.Next;}

但是我想知道是否有更优雅的解决方案.请注意,我需要linkedListNode< T>因此,为了从那里浏览列表.

解决方法 您可以编写一个扩展方法来获取节点序列,并搜索:
public static IEnumerable<linkedListNode<T>> Nodes<T>(this linkedList<T> List){    for (var node = List.First; node != null; node = node.Next)    {        yIEld return node;    }}

那么你可以做

var matchingNode = List.Nodes().FirstOrDefault(n => n.Value.ID == myID);
总结

以上是内存溢出为你收集整理的c# – 如何搜索LinkedList集合?全部内容,希望文章能够帮你解决c# – 如何搜索LinkedList集合?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1258863.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存