MAP键集无法正常工作 - 无法识别关键字KeyType?

时间:2013-04-23 12:30:57

标签: java map

我正在尝试从地图创建Keyset,但我的程序无法识别关键字 KeyType

我正在使用Oracle Java Docs Here

中提到的以下代码
for (KeyType key : outputMap.keySet())
    System.out.println(key);

2 个答案:

答案 0 :(得分:2)

文档中的代码是伪代码。将KeyType替换为Map中存储的类型作为键。

例如:

Map<Integer, String> map = new HashMap<>();

for (Integer key : map.keySet()) {
  //..
}

答案 1 :(得分:1)

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是将键映射到值的对象。这里我的键类型是Integer,我的值类型是String,因为这个例子映射了Serial no。以人名。

你也可以像这样迭代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());