Retornando os itens de um Map

Olá,
Estou usando esse código para mostrar os itens de um TreeMap que criei:

        for(String key : map.keySet())
        {
            System.out.println(key + " " + map.get(key));
        }

porém queria adicionar uma condição para imprimir na tela somente os casos onde o value da chave seja igual a um determinado valor (ex: retorna apenas as chaves que tem valor = 1). Como posso fazer essa declaração?

        for(String key : map.keySet()) {
            if (key.equals("1")) {
                System.out.println(key + " " + map.get(key));
            }
        }

Edit: você quer fazer a verificação na chave mesmo ou no valor que a chave aponta?

Olá obrigado pela resposta, no caso seria para retornar as chaves onde os valores são iguais a um valor especifico, como exemplo “1”.

Então dá para usar o entrySet:

for(Map.Entry<String, Integer> entry : map.entrySet()) { //assumindo que seja String e Integer
    if (entry.getValue() == 1) {
        System.out.println(entry.getKey() + " " + entry.getValue());
    }
}

a relação chave valor é String, String. Eu fiz do jeito que falou usando entry.getValue().contains, deu certo, muito obrigado!

1 curtida