【发布时间】:2013-11-13 12:29:36
【问题描述】:
我有一个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> 才能从那里导航列表。
【问题讨论】:
-
到目前为止,没有一个答案是好的。如果您想有效地执行此操作,请在循环中使用
yield。如果您想在没有大量代码的情况下调用它,请使用它制作一个扩展方法。您将以一种或另一种方式迭代集合。