关于java6中的foreach有什么问题?

jim*_*mmy 5 java

Map testMap = new HashMap();
for(Map.Entry<String, Object> entry:testMap.entrySet()){

}
Run Code Online (Sandbox Code Playgroud)

它有错误提示:"类型不匹配:无法从元素类型对象转换为Map.Entry"

你能告诉我原因吗?

谢谢

Pet*_*nov 6

testMap不是泛型类型,因此testMap.entrySet返回对象.

你可以像这样纠正它:

Map<String, Object> testMap = new HashMap<String, Object>();
for(Map.Entry<String, Object> entry:testMap.entrySet()){

}
Run Code Online (Sandbox Code Playgroud)


Jer*_*myP 6

也许你应该将testMap声明为

Map<String, Object> testMap = new HashMap<String, Object>();
Run Code Online (Sandbox Code Playgroud)