在Map中修改对象的成员

时间:2011-01-17 01:38:58

标签: java collections

如果我创建一个具有名为“testName”的成员变量的类,然后从中创建一些对象并将它们全部作为值放在“Map”中。我如何迭代这个Map并修改每个值Object中的“testName”变量?

换句话说,我怎样才能访问&当该对象放置在Map中时,修改Object的成员。

3 个答案:

答案 0 :(得分:2)

您必须迭代遍历地图的每个条目并修改名称。 See here for example关于如何遍历地图

答案 1 :(得分:2)

如果要修改的对象是地图中的所有值,并且您不希望将键映射更改为值,则可以遍历地图值的集合:

Collection< ValueType > vals = map.values();
for (ValueType val : vals) {
    val.testName = ...
}

答案 2 :(得分:1)

Map本身不可迭代,但您可以通过keySet()方法从地图中获取keySet,因为这是一个可迭代的Set(实现Iterable接口)。迭代keySet,通过get方法从Map获取每个值,并进行所需的更改。