我正在使用 Android Studio 开发应用。
当我尝试将 Object
放入 ArrayMap
时出现错误。
private ArrayMap<String, ? extends Tracker> trackers;
public void addTracker(@NonNull Tracker tracker) {
trackers.put(tracker.getName(), tracker);
}
我想向我的 ArrayMap
添加任何类型的继承自类 Tracker
的对象
IDE 说它无法为参数 (String, Tracker)
解析 put
方法
知道为什么吗?
最佳答案
tracker
的第二个通用参数可以是任何类型的 Tracker
,因此编译器会阻止添加直接实例。您可以将其声明为
private ArrayMap<String, Tracker> trackers;
关于java - 泛型上的通配符错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33437586/