【发布时间】:2012-05-20 03:04:40
【问题描述】:
由于 ListCollectionView 不支持索引器(例如 View[0]),我发现迭代过滤/排序列表的唯一方法是使用 foreach。
1) foreach 是否会确保在迭代期间保留视图中的项目顺序?如果没有,还有什么办法?
2) 是否有强类型 ListCollectionView?我错过了很多 linq 扩展方法,并且有很多 FindMaxThis、FindFirstThat... :)
【问题讨论】:
-
从逻辑上讲,似乎迭代保留了顺序,否则可能会得到不同的结果,因为这是第 n 次迭代。迭代不能是随机结果生成器。
-
好吧,我记得有一次我读过它,答案是:取决于它正在迭代的集合......如果你看一下 SO,你会发现那里有类似的问题。无论如何, List
肯定会保持秩序,我一直在使用 List ,所以我很安全