最佳答案
一段时间以来,我一直想知道在最佳实践中是否允许不在 java.util.Map
上使用 containsKey()
方法,而是对来自 get()
的结果执行 null 检查。
我的理由是,对值进行两次查找似乎是多余的——首先查找 containsKey()
,然后再查找 get()
。
另一方面,大多数 Map
的标准实现可能会缓存最后一次查找,或者编译器可以通过其他方式消除冗余,为了代码的可读性,最好维护 containsKey()
部分。
我非常感谢你的评论。