public class MergeSort<T> {
private Comparator<? super T> c;
<T> void sort(T[] a, Comparator<? super T> c) {
mergeSort(a, 0, a.length);
this.c = c;
}
}
在出现编译错误this.c = c
。错误为“类型不匹配:无法从比较器转换为比较器”
在<T>
对sort
方法的阴影之一MergeSort<T>
,所以他们不重合,它们是两个独立的类型碰巧都refered为T
。只需删除它,它将起作用:
void sort(T[] a, Comparator<? super T> c) {
this.c = c;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句