У меня есть процентные значения в карте с флагами, как- [44,4: правда, 0,0: ложь, 44,4: ложь, 38,9: ложь, ложь 0,0]Groovy/Java карта сортировать
Я хочу, чтобы отсортировать их в в порядке убывания. Код, который я использую, теряет дубликаты ключей. Я не хочу их потерять, так как я хочу отображать все значения в выходе.
def secDisc = [:]
def discount = plan."${section}"
if(plan."${section}"!=null && plan.bluePlan)
secDisc."$discount" = true
else if(plan."${section}"!=null && !plan.bluePlan)
secDisc."$discount" = false
secDisc = secDisc.sort {a, b -> b.key <=> a.key}
secDisc.each{disc, flag->
println "disc- $disc flag- $flag"
}
Когда я печатаю его, остается только одно значение 0.0. Спасибо!
Странно, что вы смогли перенести повторяющиеся значения на карту в первую очередь (если хранилище резервных копий действительно является «Картой») - или вы можете использовать «IdentityHashMap»? Не знаете, как вы это делаете в Groovy. – fge
Возможно, вы захотите переосмыслить использование десятичных знаков в качестве ключей к карте. –