修改队列中的顶部元素



那么我如何修改队列中的第一个元素呢?

我正在处理一项任务,每次循环运行时,我可能会也可能不会将其添加到队列中。如果添加了某个东西,它会被随机分配一个介于1到5之间的数字。

一旦添加了一些东西,每次循环运行时,我都需要通过递减一来更新顶部对象。一旦对象变为零,我将移除该对象。

除了如何修改/更新顶部对象之外,我几乎已经想好了所有这些。

欢迎提出任何建议。

如果您使用的是Queue<T>接口,这是不可能的。它提供了一种将元素放入队列的方法和从队列中取出元素的方法,但对这些元素的放入或取出位置没有任何限制。这就留给具体的实现了。对于线性排序的队列,正如您所说的,您应该查看Deque<T>接口,它允许您向队列的任一端添加和从中删除。或者,您可以使用特定的队列实现,如LinkedList<T>,它恰好也是List<T>,并允许您在特定偏移量处set元素。

最新更新