Java 泛型发生意外绑定错误
我正在尝试编写一个方法,该方法接受实现HasId接口的所有元素的列表,并返回具有给定Id的元素。但由于某些原因,我遇到了意外的绑定编译错误Java 泛型发生意外绑定错误,java,generics,Java,Generics,我正在尝试编写一个方法,该方法接受实现HasId接口的所有元素的列表,并返回具有给定Id的元素。但由于某些原因,我遇到了意外的绑定编译错误 public abstract class HasIdUtil<T> extends AbstractTestNGSpringContextTests { protected T findById(List<T extends HasId> hasIdList, String id) { for (T item : hasI
public abstract class HasIdUtil<T> extends AbstractTestNGSpringContextTests {
protected T findById(List<T extends HasId> hasIdList, String id) {
for (T item : hasIdList) {
if (id.equals(item.resolveId())) {
return item;
}
}
throw new ElementNotFoundException("There are no elements with id = " + id + " in given list");
}
}
这是我的界面:
public interface HasId<T> {
T resolveId();
}
有什么想法吗?我应该指定HasId
public abstract class HasIdUtil<V extends HasId<K>, K> extends AbstractTestNGSpringContextTests {
protected V findById(List<? extends V> hasIdList, K id) {
for (V hasId : hasIdList) {
if (id.equals(hasId.resolveId())) {
return hasId;
}
}
throw new ElementNotFoundException("There are no elements with id = " + id + " in given list");
}
}
请发布错误消息。您确定收到意外的绑定错误吗?还是别的什么?如果是的话,你能告诉我你的电话号码吗?不知怎的,我觉得ListIntellij Idea出于某种原因用红色resolveId方法绘制