0

如何遍历 hashmap(包含 Person 类型的对象)并在 Person 对象上调用方法?

我用了:

for(Iterator it = hashmap.entrySet().iterator(); is.hasNext();){
    Person p = (Person)it.next();
    p.doSomething();
}

但是当执行 Person 转换时,它说该对象不能转换为 Person 对象(但它绝对是 Person 的子类型)。

java.util.HashMap$Entry 不能转换为 Person。

编辑这是1.4!

4

1 回答 1

4

由于您的迭代器将遍历Map.Entry对象,因此首先将它们提取为这些类型:

Person p = (Person)((Map.Entry)it.next()).getValue();
于 2012-08-18T12:34:38.633 回答