Map.containsKey()vs Map.keySet()。stream()。anyMatch()

时间:2018-03-29 18:25:42

标签: java

您认为效率更高:HashMap.containsKey(key)HashMap.keySet().stream().anyMatch(predicate)

由于

1 个答案:

答案 0 :(得分:2)

Map是一个接口,如果没有具体的实现,谈论效率或性能是没有意义的。

但是,让HashMap作为常见的实现之一。

HashMap.containsKey摊销O(1)。

迭代键时,

Map.keySet().stream().anyMatch(predicate)为O(N)。我们甚至没有提到这句话创造的所有对象。