我試着迭代Java中的hashmap,這應該是一件相當容易的事情。但是,下面的代碼給了我一些問題:Java中的HashMap上的迭代器
HashMap hm = new HashMap();
hm.put(0, "zero");
hm.put(1, "one");
Iterator iter = (Iterator) hm.keySet().iterator();
while(iter.hasNext()) {
Map.Entry entry = (Map.Entry) iter.next();
System.out.println(entry.getKey() + " - " + entry.getValue());
}
首先,我需要投迭代器上hm.keySet()迭代器(),否則它說:「類型不匹配:不能從java.util中轉換。迭代器到迭代器「。但後來我得到「方法hasNext()未定義類型Iterator」,並且「方法hasNext()未定義類型Iterator」。
聽起來就像你導入了錯誤的'Iterator'類。你會想要導入'java.util.Iterator'。 – Vulcan 2013-03-15 00:01:06
如果你想要的是entires而不是key,你需要遍歷entrySet()而不是keySet()。 – 2013-03-15 00:09:13