实现Custom LinkedHashMap的有效方法

时间:2016-07-13 07:08:29

标签: java performance dictionary

我想实现一个自定义LinkedHashMap,它有一些方法/一些与LinkedHashMap不同。我正考虑将其设置为LinkedHashMap,并根据我想要的任何内容改变实现,其余的只需从LHM调用方法。

效率这么高吗?类似的东西:

public class CustomLHM<K, V> implements Map<K, V>{

    private final HashMap<K, V> entries;

    public CustomLHM() {
        entries = new LinkedHashMap<K, V>();
    }

对于像containsKeycontainsValue这样的方法......我只是做一个返回entries.containsKey(key)所以基本上只是从已经实现的java LinkedHashMap调用方法。我的问题是......有更好的方法吗?实现它的更有效方法是什么?

如果我自己使用LHM的实际实现等基本结构来实现它会更有效吗?

1 个答案:

答案 0 :(得分:0)

这是委托模式,将所有调用委托给一个字段。

提示:

  

如果IDE无法为您执行此操作,请首先覆盖,然后调用IDE覆盖所有方法,替换“super”。与“条目。”。

效率并不是真正的问题,特别是对于JIT编译器。

即使在最新的Java编译器中,HashMap也得到了改进(我相信使用树集的存储桶),我会避免自己实现需要生产质量稳定性的东西。或者更好:不需要维护。