Cómo buscar par coincidente almacenado en HashMap?

Itian:

Tengo que buscar el par coincidente de los valores almacenados en una LinkedHashMap.

He probado el siguiente código pero su dando el verdadero para cualquier valor existe, pero sólo quiero que devuelva cierto cuando el partido correspondiente valor con el valor de la clave.

bt2.addActionListener(new ActionListener() {
    @Override
    public void actionPerformed(ActionEvent e) {
        try {   
            if(CheckValueExample.checkRelationship(txtKey.getText(),txtValue.getText())==true)      
                System.out.println("Pair Match");
            else
                System.out.println("No-Pair Match");
        } catch (Exception ex) {
            Logger.getLogger(GUI.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
});

Método para pares coincidentes:

public static boolean checkRelationship(String key, String value) {
    HashMap<String, String> hashmap = new LinkedHashMap<String, String>();

    // Adding Key and Value pairs to HashMap
    hashmap.put("Bus","Land_Vehicle");
    hashmap.put("SchoolBus","Bus");
    hashmap.put("Truck","Land_Vehicle");
    hashmap.put("Land_Vehicle","Vehicle");

    boolean flag=false;
    if(hashmap.containsKey(key)&&hashmap.containsValue(value))
        flag=true; 
    else
        flag=false;

    return flag;
}

Supongamos que cuando entró en clave es "Bus" y el valor introducido es "Land_Vehicle"; Sólo entonces se debe devolver verdadero.

Cualquier otra forma alternativa de hacer esto también es apreciable, y, básicamente, tengo que coincidir con el par almacenada en el archivo JSON.

Samuel Philipp:

Sólo tiene que utilizar hashmap.containsKey(key) && hashmap.get(key).equals(value)para comprobar la relación.

Se obtiene el valor de keysi existe y lo compara con lo dado value.

Aquí está el método completo:

public static boolean checkRelationship(String key, String value) {
    return hashmap.containsKey(key) && hashmap.get(key).equals(value);
}

También debe inicializar el HashMapsólo una vez (por ejemplo, en el static {}bloque) y no cada vez que se llama al método.

Supongo que te gusta

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