Java效率Hashmap get方法

时间:2019-05-25 20:45:33

标签: java hashmap

所以我的问题可能有点基本,有些过头了。但是我想问的是,多次使用同一Hashmap get方法是否更有效。或者将对象指向get方法之一,然后使用此临时对象。我写了一些代码来可视化它。

    HashMap<String, MyClass> stringCounter = new HashMap<>();
    stringCounter.put(..., ...); // ...

    if(stringCounter.containsKey(name)) stringCounter.get(name).remove();
    else stringCounter.get(name).add();

    MyClass myClass = stringCounter.get(name);
    if(stringCounter.get(otherName).remove) myClass.remove();
    else myClass.add();

1 个答案:

答案 0 :(得分:0)

快速解答:一次获取您的实例,然后使用它,这样阅读起来也会更快,更干净。 当您获取哈希表时,在内部进行查找,jvm可能会或可能不会检测到它可以进行优化。但是您不确定

Object instance = map.get(key);
if(instance != null {
    instance.doThis();
    instance.doThat();
}