Salvar chaves de HashMap em ArrayList classificadas pelos valores HashMaps em Java

Christoph H .:

Eu tenho um HashMap<String, Float>que é preenchido com várias entradas. Eu quero salvar as chaves do HashMap em um ArrayList<String>, mas classificar este ArrayList de acordo com os valores correspondentes do HashMap.

Existe uma solução melhor que a ordenação do HashMap, em seguida, usando

ArrayList<String> sortedKeys = new ArrayList<String>(myHashmap.keySet());

Pela maneira eu não sou obrigado a usar um HashMap em primeiro lugar, mas o valor define a ordem e eu não quero tecla de troca e valor desde o flutuador pode mudar várias vezes.

Sweeper:

Se bem entendi, você pode criar a lista de matriz a partir das teclas em primeiro lugar, e, em seguida, tipo:

ArrayList<String> list = new ArrayList<>(myHashMap.keySet());
list.sort(Comparator.comparing(myHashMap::get));

Acho que você gosta

Origin http://43.154.161.224:23101/article/api/json?id=196122&siteId=1
Recomendado
Clasificación