У меня есть объект с именем Event.Раньше я сохранял эти события в:
Queue<Event> Q = new PriorityQueue<>(new EventCompare());
, но теперь я понял, что было бы лучше, если бы у меня была очередь наборов:
Queue<Set<Event>> Q = new PriorityQueue<>(new EventCompare());
В моем компараторе я сравниваюзначения событий.
private class EventCompare implements Comparator<Event> {
@Override
public int compare(Event e1, Event e2) {
if(e1.getValue() > e2.getValue()) {
return 1;
}
else if(e1.getValue() < e2.getValue()) {
return -1;
}
return 0;
}
}
Теперь я хочу, чтобы, если два значения равны, были в одном наборе.Так что очередь должна выглядеть так:
{Event(1)}, {Event(12)}, {Event(15), Event(15)}.
Надеюсь, я достаточно ясно.Любая помощь будет оценена.