当使用map.get()时,使用java Map.containsKey()是否是多余的?

8 浏览
0 Comments

当使用map.get()时,使用java Map.containsKey()是否是多余的?

我一直在思考是否在最佳实践中允许不使用containsKey()方法来判断java.util.Map中是否包含键,而是对get()的结果进行空值检查。

我的理由是,似乎对值进行两次查找是多余的 - 首先是containsKey(),然后是get()

另一方面,可能大多数Map的标准实现会缓存最后一次查找,或者编译器可以消除冗余,并且为了代码的可读性,最好保留containsKey()部分。

非常感谢您的意见。

0