0

サーバーが指示を送信し、クライアントがそれらの指示を受信するクライアントサーバーアプリケーションに取り組んでいます。マップは次のように宣言されています

private static Map<key,value> obj=new HashMap<key,value>();

マップはsynchronised(obj)、値クラスのコンストラクターで値を取得しています

obj.put(this,this);

このマップのすべてのキーを取得しようとしています。私は使用 Set<key> t=Map.KeySet();しましたが、これは、インターフェースでシンボル:KeySet()が見つからないというコンパイルエラーをスローしますjava.util.Map.。注:キーはインターフェースであり、値はマップが宣言されているクラスです。

4

3 に答える 3

1

あなたが書いたように

private static Map<key,value> obj=new HashMap<key,value>();

あなたは書くべきです

Set<key> t=obj.keySet();

それ以外のSet<key> t=Map.KeySet();

于 2013-01-07T10:12:32.883 に答える
0

マップ上にKeySetメソッドはありません。keySetはキーを取得するための正しいメソッドです。

于 2013-01-07T10:11:43.883 に答える
0

Map API を一度確認してください。Map はインターフェイスであり、静的メソッドを呼び出すように keySet() を使用しようとしています。

作成されたオブジェクトでメソッドを呼び出す必要があります。

あなたが使用する必要がありますobj.keySet()

マップ API

于 2013-01-07T10:15:23.317 に答える