我想遍歷SortedSet而不必保存我的代碼中的實際位置。任何方式來循環沒有Iterator或保存索引位置的SortedSet?
在the official .NET documention我注意到一個First()方法存在,但我沒有找到一個Next<T>()
方法或一種(getNext
,goNext
,Iterate
...)。
我想要的代碼是這樣的:
private SortedSet<Frame> frames;
[...]
public Frame getNextFrame() {
if (frames.Next<Frame>()) //didnt exists
{
return frames.Current<Frame>() //didnt exists
} else {
return frames.First<Frame>();
}
}
框架結構:
public struct Frame
{
Rectangle zone;
TimeSpan duration;
public Frame(Rectangle z, TimeSpan ts)
{
duration = ts;
zone = z;
}
}
你只是想看到的第一個或列表中的第二項?因爲你可以用foreach語句遍歷一個集合,但我不確定這是你在找什麼 – bas 2013-02-28 23:07:39
什麼類型是'frames'?如果您想避免性能命中,您將希望它實施IList 。 – itsme86 2013-02-28 23:09:35
我想瀏覽所有的列表,我的問題是確實存在任何方式有一個可控的保持其位置。 – 2013-02-28 23:10:20