题
我写:
public interface Map <Key, Value> cells;
蚀抱怨说 “{预期”。
public interface Map <Key, Value> cells{};
我然后写入上述蚀和它抱怨“语法错误令牌‘细胞’,删除该令牌”。
我应该怎么做这到底?谷歌是不是我的朋友在这里,因为我无法找到代码片段工作着这样的语法。
解决方案
您想声明一个名为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
。
你到底想干什么?定义一个新的类型或定义类型地图的成员?
如果要定义一个构件,就不需要面前的接口关键字。 只有当您正在定义一个新的类型需要的接口。
您想要的:
public Map<Key,Value> cells;
要创建类型的变量被称为小区地图。
public interface Map<Key,Value> cells;
时的声明(错误地)称为映射的用户自定义界面 - 也许不是你正在尝试做的。
不隶属于 StackOverflow