我用这个原型写了一个类:
public class AkbarWorks<T implements Comparable>
此类包含2个ArrayLists:
private ArrayList<T> elements = new ArrayList<>();
private ArrayList<T> removed = new ArrayList<>();
我的问题是:我想比较T的2个对象,但compareTo不起作用,并且我无法覆盖它,我在此函数中使用compareTo:
public T getMin() throws IllegalStateException {
if (elements.size() == 0) {
throw new IllegalStateException();
} else {
T min = elements.get(0);
for (int i = 1; i < elements.size(); i++) {
if (elements.get(i).compareTo(min) < 0)
min = elements.get(i);
}
return min;
}
}
答案是:T必须扩展Comparable而不是工具。