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));