如果我有一个包含以下条目的列表:
苹果香蕉葡萄樱桃橙色猕猴桃
结果是
fruit.FindAll(f => f.Length == 6)
Run Code Online (Sandbox Code Playgroud)
保证永远
香蕉樱桃橙
或订单可能不同?
从某种意义上来说它并不能保证它在文档中没有说明,但是如果你看一下它当前是如何实现的,那么是的,它总会以相同的顺序返回.
以下是它目前的实施方式:
public List<T> FindAll(Predicate<T> match)
{
if (match == null)
{
ThrowHelper.ThrowArgumentNullException(ExceptionArgument.match);
}
List<T> list = new List<T>();
for (int i = 0; i < this._size; i++)
{
if (match(this._items[i]))
{
list.Add(this._items[i]);
}
}
return list;
}
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,它是一个简单的for循环,按顺序遍历列表,并添加匹配的项目.
归档时间: |
|
查看次数: |
1435 次 |
最近记录: |