У меня есть этот случай класс:очереди приоритета с настраиваемым заказом
case class Offer(id: Int, amount: Int, interestRate: Double) extends Ordered[Offer] {
def compare(that: Offer) = interestRate.compareTo(that.interestRate)
}
Как вы можете видеть, я определил порядок, основанный на Offer.interestRate
. Я хочу, чтобы заказ увеличивался.
Я создал эти предложения:
Offer(1, 5, 4.0)
Offer(2, 5, 0.5)
Offer(3, 5, 1.5)
и добавили их в приоритетной очереди:
val currentOffers: mutable.PriorityQueue[Offer] = mutable.PriorityQueue.empty[Offer]
Проблема заключается в том, что, когда я currentOffers.dequeue()
я получаю Offer(1, 5, 4.0)
.
Вместо этого, я хотел бы получить:
Offer(2, 5, 0.5)
Что мне нужно изменить?