質問

私は書きます:

public interface Map <Key, Value> cells;

日食 "期待{" 文句を言うと言います。

public interface Map <Key, Value> cells{};
私は、Eclipseの上に書いて、それは「このトークンを削除し、 『セル』トークンに構文エラー」文句を言います。

私は地球上で何をすべきでしょうか?私はこの構文のうち、仕事にコードスニペットを見つけることができないとしてGoogleは、ここでは私の友人ではありません。

役に立ちましたか?

解決

あなたはcellsという名前のメンバ変数を宣言しようとしていますか?もしそうなら、それを行うための方法があります:

public class Foo {

   // ...

   public Map<Type1, Type2> cells;

   // ...

}

あなたはメソッド内で変数を宣言しようとしている場合は、次の操作を行います。

public class Foo {

    // ...

    public void myMethod() {
        // ...

        Map<Type1, Type2> cells;

        // ...
    }

    // ...
}

編集をあなたがMap <Key, Value>によって混乱しているように、私が説明しようので、それは、見えます。

KeyMapオブジェクトがキーのセットに使用することは、データ型のプレースホルダです。同様に、Valueは、値のセットに使用するデータ型のプレースホルダです。有効な組み合わせは、例えば、Map <String, Integer>だろう。このMapオブジェクトはStringオブジェクトのセットにIntegerオブジェクトのセットをマッピングすることを意味します。

他のヒント

あなたはおそらく意味

public Map<Key, Value> cells;

interfaceキーワードは、 のインタフェースを定義するために使用されます。 implements実装classことを宣言するときinterfaceが使用されます。

あなたは何をしようとしていますか?新しいタイプを定義するか、タイプ地図のメンバーを定義する?

あなたはメンバーを定義する場合は、

、あなたはそれの前にinterfaceキーワードは必要ありません。 あなたは新しい型を定義している場合にのみ、インターフェースを必要としています。

あなたが欲しいます:

public Map<Key,Value> cells;
タイプ地図の細胞と呼ばれる変数を作成するには、

public interface Map<Key,Value> cells;
あなたがやろうとしているもの。

おそらくない - 。

は、(間違って)地図と呼ばれるユーザー定義のインタフェースを宣言して

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top