0
点赞
收藏
分享

微信扫一扫

Map接口提供了哪些不同的集合视图?

ZGtheGreat 2022-02-24 阅读 58
java

Map 接口提供三个集合视图:

1 Set keyset() 返回 map 中包含的所有 key 的一个 Set 视图。集合是受 map 支持的, map 的变化会在

集合中反映出来,反之亦然。当一个迭代器正在遍历一个集合时,若 map 被修改了(除迭代器自身的移

除操作以外),迭代器的结果会变为未定义。集合支持通过 Iterator Remove Set.remove

removeAll retainAll clear 操作进行元素移除,从 map 中移除对应的映射。它不支持 add addAll

作。

2 Collection values() 返回一个 map 中包含的所有 value 的一个 Collection 视图。这个 collection

map 支持的, map 的变化会在 collection 中反映出来,反之亦然。当一个迭代器正在遍历一个 collection

时,若 map 被修改了(除迭代器自身的移除操作以外),迭代器的结果会变为未定义。集合支持通过

Iterator Remove Set.remove removeAll retainAll clear 操作进行元素移除,从 map 中移除对应

的映射。它不支持 add addAll 操作。

3 Set<Map.Entry<K,V>> entrySet() 返回一个 map 钟包含的所有映射的一个集合视图。这个集合受

map 支持的, map 的变化会在 collection 中反映出来,反之亦然。当一个迭代器正在遍历一个集合时,

map 被修改了(除迭代器自身的移除操作,以及对迭代器返回的 entry 进行 setValue 外),迭代器的结

果会变为未定义。集合支持通过 Iterator Remove Set.remove removeAll retainAll clear 操作进

行元素移除,从 map 中移除对应的映射。它不支持 add addAll 操作。

举报

相关推荐

0 条评论