【发布时间】:2021-03-20 06:13:27
【问题描述】:
我正在实现一个通用 ArrayList 类,它将遵循给定元素的自然顺序。我假设有一些方法可以做到这一点,类似于 TreeSet 如何遵循给定元素的自然顺序。
当我对存储在其中的对象使用 .compareTo 方法调用时,出现“无法解析 'E' 中的方法 'compareTo'”的错误。我如何告诉编译器对象 E 应该只是实现了可比较接口的类?
现在,相关代码如下所示:
public class SortedList<E> {
...
public int indexOf(E value) {
...
else if (value.compareTo(this.get(minIndex)) > 1)...
}
}
这篇文章很接近帮助: Cannot find compareTo when receiving comparable Object[] 但它适用于一种特定的静态方法,而我需要整个类的对象是 Comparable 的,并且相同的添加似乎不适用于类头。
有什么我可以添加到执行类似功能的类头中吗?
【问题讨论】:
标签: java class generics interface comparable