为了账号安全,请及时绑定邮箱和手机立即绑定

如何搜索存储在哈希图中的匹配对?

如何搜索存储在哈希图中的匹配对?

森栏 2022-09-07 16:15:08
我需要搜索存储在LinkedHashMap中的匹配值对。我尝试了以下代码,但它为存在的任何值都给出了true,但我只希望当相应的值与键值匹配时返回true。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);        }    }});匹配对的方法: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;}假设输入密钥时为“Bus”,输入的值为“Land_Vehicle”;只有这样,它才应该返回 true。任何其他替代方法来做到这一点也是可观的,基本上我必须匹配存储在json文件中的对。
查看完整描述

1 回答

?
慕桂英4014372

TA贡献1871条经验 获得超13个赞

只是用来检查关系。hashmap.containsKey(key) && hashmap.get(key).equals(value)


它获取 是否存在 的值,并将其与给定的 进行比较。keyvalue


这是完整的方法:


public static boolean checkRelationship(String key, String value) {

    return hashmap.containsKey(key) && hashmap.get(key).equals(value);

}

您还应该只初始化一次(例如在块中),而不是每次调用该方法时。HashMapstatic {}


查看完整回答
反对 回复 2022-09-07
  • 1 回答
  • 0 关注
  • 118 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号