java - Java Map 的非支持键集

标签 java collections

给定以下 Java HashMap:

HashMap<String, Integer> map = new HashMap<String, Integer>();

以下语句为我提供了一组“支持”的 map 键:

Set<Integer> keys = map.keySet();

但假设我想要一份按键集的副本,我可以在不影响 map 的情况下操作它。有没有更好/更正确的方法比

Set<Integer> keys = new HashSet<Integer>();
for( Integer key : map.keySet() )
    keys.add( key );

最佳答案

有一个稍微简单一点的方法:

Set<Integer> keys = new HashSet<Integer>(map.keySet());

...它只是在一行中制作一个副本。

关于java - Java Map 的非支持键集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18411510/

相关文章:

java - Spring文件上传引导问题

java - 使用集合对象构建结果集

c# - 安全删除 ForEach 中的 DataRow

java - 是否可以在不使用反射的情况下用 Java 编写一个简单的通用 DAO?

java - 如何创建一个显示字符串数组的方法

java - mysql数据库无法连续插入大量数据集的原因是什么?

java - GWT 中的 MVP 模式 : How to initialize Model/View and handle server requests in the Presenter?

Mongodb - 包含元素但不包含另一个元素的数组

c# - 如何使用未知 T 从 ICollection<T> 获取计数

c# - 继承自列表<T>