質問
私は書きます:
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>
によって混乱しているように、私が説明しようので、それは、見えます。
Key
はMap
オブジェクトがキーのセットに使用することは、データ型のプレースホルダです。同様に、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;
あなたがやろうとしているもの。おそらくない - 。は、(間違って)地図と呼ばれるユーザー定義のインタフェースを宣言して