问号在可比较的<! - ? - >中意味着什么

时间:2017-02-09 04:01:47

标签: java sorting generics comparable

我正在研究泛型和排序算法,我的教授为我们提供了一个基于我们的排序类的模板。但是,我对以下含义感到困惑:

public interface Sort<T extends Comparable<?>> 

我有另一个班级(MergeSort)

public class MergeSort<T extends Comparable<?>> implements Sort<T> {

然而,对于该类标题,我不能使用以下代码行

if (l.get(leftIndex).compareTo(r.get(rightIndex)) < 0)

因为compareTo给我一个错误

The method compareTo(capture#1-of ?) in the type Comparable<capture#1-of ?>
is not applicable for the arguments (T)

但如果我将Comparable<?>的问号更改为Comparable<T>,则可以正常工作。但是,如果有人可以提供帮助,我不明白这背后的逻辑或原因。谢谢!

其他信息:我的教授将为我们提供ArrayList<Integer>整数,我们必须初始化我们的排序类,使其成为我们方法中的LinkedList<T> = new LinkedList<>()

谢谢!

0 个答案:

没有答案