gpt4 book ai didi

java - Map.put 和 Map.putAll 方法之间的区别?

转载 作者:搜寻专家 更新时间:2023-10-30 21:00:24 25 4
gpt4 key购买 nike

Map.putAll 等同于对指定的键 k 到值 v 的每个映射在 map 上调用一次 Map.put(k, v) map 。所以在功能方面,两者是相同的。

所以,我很想知道其他区别是什么以及何时使用哪一个?

最佳答案

好吧,这取决于。

putputAll 是接口(interface)方法,因此该接口(interface)的每个 实际实现都将保证 put 方法将单个键/值对放入映射中,而 putAll 将从源中放入所有键/值对。

但这取决于实现者如何去做以及另外(内部)做什么。

当然,一个简单的实现会为源映射的每个条目调用 put,但也许有人发明了另一种方法来实现该目标。或者 putAll 将在输入添加对之前/之后/同时执行一些其他 map 内部操作。

我的经验法则是:如果您必须将所有键/值对从一个映射放到另一个映射,那么请依靠实现者的聪明才智并使用 putAll 方法。它总是很有可能提供比手动为所有对调用 put 更好的性能。

关于java - Map.put 和 Map.putAll 方法之间的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5816212/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com