我正在Silverlight 3.0中創建一個應用程序在那個應用程序中,我想實現一個功能,例如:我必須保持值的集合。我一直在從一端添加值並從另一端刪除值。意味着我想保持3000個值的集合。如果我在該集合中添加一個值,則應刪除一個值,以便我只收集3000個值。我想使用「循環隊列」那麼在循環隊列的silverlight中是否有任何功能?或者是否有任何有效的邏輯而不是循環隊列?請幫助我。提前感謝。Silverlight中的循環隊列功能
1
A
回答
1
您可能需要使用內置Queue
類並實現它周圍的包裝:
public class CircularQueue
{
private int totalItems;
private Queue<object> queue = new Queue<object>();
public CircularQueue(int maxCount)
{
this.totalItems = maxCount;
}
/// <summary>
/// Get first object from queue.
/// </summary>
public object Dequeue()
{
// ToDo: You might want to check first if the queue is empty to avoid a InvalidOperationException
object firstObject = this.queue.Dequeue();
return firstObject;
}
public void EnQueue(object objectToPutIntoQueue)
{
if (this.queue.Count >= this.totalItems)
{
object unusedObject = this.queue.Dequeue();
// ToDo: Cleanup the instance of ununsedObject.
}
this.queue.Enqueue(objectToPutIntoQueue);
}
}
1
我不熟悉與任何特定術語「循環隊列」,但你可以很容易地創建自己:
public class CircularQuene<T> : List<T>
{
public CircularQuene(int maxCount)
{
count = maxCount;
}
new public void Add(T variable)
{
base.Add(variable);
if (Count > count)
{
RemoveAt(0);
}
}
private int count;
public int MaxCount
{
get
{
return count;
}
set
{
count = value;
}
}
}
有點粗糙,但應滿足您的需求。
+0
感謝答覆 – Dany
相關問題
- 1. C++中的循環隊列
- 2. C#中的循環隊列#
- 3. 循環隊列Python
- 4. 循環功能
- 5. PHP + MySQL的循環隊列
- 6. beanstalkd上的循環隊列
- 7. 循環隊列的缺點?
- 8. jQuery的循環隊列
- 9. 循環隊列和循環鏈表
- 10. 的Javascript「for」循環功能序列
- 11. WH_KEYBOARD的SetWindowsHookEx卡在循環/隊列中
- 12. Omnet中循環隊列的初始化
- 13. pthread_cond_wait fifo循環隊列中的死鎖
- 14. 查找循環隊列中的項目?
- 15. C中的循環隊列打印
- 16. 功能卡在循環中
- 17. 在Matlab中循環功能
- 18. 循環隊列Python實現
- 19. 隊列和While循環
- 20. 循環隊列實現
- 21. 同步循環隊列
- 22. 循環隊列理論
- 23. 循環隊列大小
- 24. 消息隊列循環
- 25. 宏(循環)功能
- 26. Tkinter循環功能
- 27. for循環功能
- 28. 循環GUI功能
- 29. 在循環功能
- 30. 循環內功能
感謝您的答覆...! – Dany