我试图从映射迭代Keyset,但我的程序不识别关键字KeyType:
我正在使用下面的代码,在Oracle Java文档中提到这里
for (KeyType key : outputMap.keySet())
System.out.println(key);
文档中的代码是伪代码。将KeyType
替换为存储在Map
中的类型作为键
Map<Integer, String> map = new HashMap<>();
for (Integer key : map.keySet()) {
//..
}
java中没有引用类型KeyType。试试这个例子:
Map<Integer, String> person = new HashMap<Integer, String>();
person.put(1, "Sohail");
person.put(2, "Ahmad");
person.put(3, "Wills");
for(Integer serialNo : person.keySet())
System.out.println("Key: "+serialNo+", Value: "+person.get(serialNo));
Map是一个将键映射到值的对象。这里我的键类型是整数,我的值类型是字符串作为这个例子映射序列号。到人的名字
你也可以像这样在Map上迭代:
Map<Integer, String> person = new HashMap<Integer, String>();
person.put(1, "Sohail");
person.put(2, "Ahmad");
person.put(3, "Wills");
for (Map.Entry<Integer, String> entry : person.entrySet())
System.out.println("Key: "+entry.getKey()+", Value: "+entry.getValue());