Consente Supponiamo che io ho il seguente elenco di mappeCome posso fare un ordinamento secondario in un elenco di mappe
[{id:1,count:2,name:xyz},
{id:2,count:3,name:def},
{id:3,count:2,name:abc},
{id:4,count:5,name:ghj}
]
prima voglio ordinare questa mappa dal conte e poi per nome:
Desiderate Resa:
[{id:3,count:2,name:abc},
{id:1,count:2,name:xyz},
{id:2,count:3,name:def},
{id:4,count:5,name:ghj}
]
ho provato quanto segue per eseguire la prima selezione, ma in grado di ordinare utilizzando nome dopo l'ordinamento per conteggio
Collections.sort(list, new Comparator() {
public int compare(Object o1, Object o2) {
return ((Comparable) ((Map.Entry) (o1)).getValue())
.compareTo(((Map.Entry) (o2)).getValue());
}
Questo è stato compilato? Il tipo Raw 'Comparator' ha bisogno dei parametri' Object', non 'Integer'. – Codebender
Non l'ho compilato. Ho appena dato un'idea di cosa sto cercando di fare –
Qual è la rappresentazione del valore nella tua mappa. Presumo che Key sia integer. Ma come stai memorizzando i valori. Perché ci sono due cose in valore per la chiave data. – YoungHobbit