2014-02-19 4 views
-1

У меня есть программа моделирования банкоматов, которую я пишу, используя PriorityQueue (PQ), полный объектов класса Class Customer, который имеет приоритет поляNum. Когда клиент покидает очередь, мне нужно увеличить приоритетNum клиентов, все еще находящихся в очереди.Изменить значение поля объекта очереди с приоритетом?

Мой вопрос: как я могу пройти через PQ и увеличивать поле для объектов?

+0

Зачем вам увеличивать номер приоритета? – turbo

+0

По мере того как клиент «показывает», ему присваивается номер приоритета от 1 до 10. Чем дольше они ожидают обслуживания, тем выше их приоритет. Сначала я вытаскиваю клиентов с наивысшим приоритетом из очереди. – ChrisW91

+0

А я вижу, теперь имеет смысл. – turbo

ответ

2

Если вам нужно сделать for each тип итерации, вы можете пройти через PriorityQueue<Customer> с помощью

for (Customer c : queue) { 
    ... 
} 
0

Вы можете использовать итератор для перебора очереди.

Iterator<Customer> iterator=queue.iterator(); 
while(iterator.hasNext()) 
{ 
    Customer c=iterator.next(); 
} 
Смежные вопросы