1
我想在Java中编写一个方法,它能够将一个自定义Key对象添加到数组中,或者如果有的话可以更改数组中已有的键。但是,我似乎无法让它工作。键将使用的类型主要是String和Integer,但我的通用方法似乎不起作用。任何类型的Java泛型<?>
的的setValue()方法具有T作为参数的类型,和getValue()返回T.
public void set(Key<?> key) {
for (int i = 0; i < settings.size(); i++) {
Key<?> k = settings.get(i);
if (k.getName().equals(key.getName())) {
k.setValue(key.getValue()); // Error here
break;
}
}
settings.add(key);
}
误差(我使用Eclipse)是:
The method setValue(capture#4-of ?) in the type Key<capture#4-of ?>
is not applicable for the arguments (capture#5-of ?)
什么是“钥匙”,另一个是“钥匙”,这将如何工作!? –
@BoristheSpider然后if语句会返回false? –
什么是初始化设置? – user2573153