put(Object key, Object value)
将指定值与指定键相关联
clear()
从
Map
中删除所有映射
putAll(Map t)
将指定
Map
中的所有映射复制到此
map
尽管您可能注意到,纵然假设忽略构建一个需要传递给
putAll()
的
Map
的开销,使用
putAll()
通常也并不比使用大量的
put()
调用更有效率,但
putAll()
的存在一点也不稀奇。
这是因为,
putAll()
除了迭代
put()
所执行的将每个键值对添加到
Map
的算法以外,还需
要迭代所传递的
Map
的元素。
但应注意,
putAll()
在添加所有元素之前可以正确调整
Map
的大小,因此如果您未亲自调整
Map
的大小(我们将对此进行简单介绍)
,则
putAll()
可
能比预期的更有效。
查看
Map
迭代
Map
中的元素不存在直接了当的方法。
如果要查询某个
Map
以了解其哪些元素满
足特定查询,或如果要迭代其所有元素(无论原因如何)
,则您首先需要获取该
Map
的
“
视
图
”
。
有三种可能的视图(参见
表
3
)
所有键值对
—
参见
entrySet()
所有键
—
参见
keySet()
所有值
—
参见
values()
前两个视图均返回
Set
对象,
第三个视图返回
Collection
对象。
就这两种情况而言,
问题
到这里并没有结束,这是因为您无法直接迭代
Collection
对象或
Set
对象。要进行迭代,