2.19. Map 接口提供了哪些不同的集合视图
Map 接口提供三个集合视图:
Set keyset()
:返回map中包含的所有key的一个Set视图。集合是受 map 支持的,map 的变化会在集合中反映出来,反之亦然。当一个迭代器正在遍历一个集合时,若map被修改了(除迭代器自身的移除操作以外),迭代器的结果会变为未定义。集合支持通过 Iterator 的 Remove、Set.remove、removeAll、retainAll 和 clear 操作进行元素移除,从 map 中移除对应的映射。
它不支持 add 和 addAll 操作。
Collection values()
:返回一个 map 中包含的所有value的一个 Collection 视图。这个 collection 受 map 支持的,map的变化会在 collection 中反映出来,反之亦然。当一个迭代器正在遍历一个 collection 时,若map被修改了(除迭代器自身的移除操作以外),迭代器的结果会变为未定义。集合支持通过 Iterator 的 Remove、Set.remove、removeAll、retainAll 和 clear 操作进行元素移除,从map中移除对应的映射。它不支持add和addAll操作。
Set<Map.Entry<K,V>> entrySet()
:返回一个 map 钟包含的所有映射的一个集合视图。这个集合受 map 支持的,map 的变化会在 collection 中反映出来,反之亦然。当一个迭代器正在遍历一个集合时,若 map 被修改了(除迭代器自身的移除操作,以及对迭代器返回的 entry 进行 setValue 外),迭代器的结果会变为未定义。集合支持通过 Iterator 的 Remove、Set.remove、removeAll、retainAll 和 clear 操作进行元素移除,从 map 中移除对应的映射。它不支持 add 和 addAll 操作。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论