我正在学习如何使用HashMaps,
我的测试项目正在运行,但我需要摆脱一些警告,
public static void main() {
Map <String, String>mMap = new HashMap<String, String>(); //crea nuevo HashMap
mMap.put("llave 1", "la llave uno"); //le mete cosas al hashMap
mMap.put("llave 2", "la llave dos");
mMap.put("llave 3", "la llave tres");
mMap.put("llave 4", "la llave cuatro");
Iterator iter = mMap.entrySet().iterator();
while (iter.hasNext()) {
Map.Entry menEntry = (Map.Entry) iter.next();
Log.d("msg", "key:"+menEntry.getKey() +" value:"+menEntry.getValue());
} } }
等等
Iterator iter = mMap.entrySet()。iterator();
我收到警告:multiple markers at this line
自动复制指向Iterator <E>
这是什么,演员?,错误?,该放什么?
同样的警告:
Map.Entry menEntry =(Map.Entry)iter.next();
非常感谢!
答案 0 :(得分:1)
因为你没有在几个地方定义类型,即
Iterator<Entry<String, String>> iter = mMap.entrySet().iterator();
和
Map.Entry<String, String> menEntry = (Map.Entry<String, String>) iter.next();
修改强>
你可以看一下JAVA 1.5中的泛型,here
是一个很小的解释。
答案 1 :(得分:1)
此警告显示您使用的类,最好参数化。使用Iterator <Entry<String, String>>
和Map.Entry<String, String>