1

マップからキーセットを処理しようとしていますが、プログラムがキーワードKeyTypeを認識していません:

Oracle Java Docs Hereに記載されているように、次のコードを使用しています

for (KeyType key : outputMap.keySet())
    System.out.println(key);
4

2 に答える 2

2

ドキュメント内のコードは疑似コードです。KeyTypeキーとして保存したタイプに置き換えMapます。

例えば:

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

for (Integer key : map.keySet()) {
  //..
}
于 2013-04-23T12:32:24.453 に答える
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 は、キーを値にマップするオブジェクトです。ここでは、この例ではシリアル番号をマップしているため、キーの型は整数で、値の型は文字列です。人の名前に。

次のようにマップを反復することもできます。

    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());
于 2013-04-23T12:51:40.847 に答える