这个符号在 Java 中是什么意思? (比较器<? super T> c)
What does this notation mean in Java? (Comparator<? super T> c)
对于我的 Java class,我需要根据这个函数头创建一个函数体:
public static <T> void sort(T[] a, Comparator<? super T> c)
Static 后面的“”是什么意思?带问号的 Comparator 是什么?
我对 Comparators 的了解是它是一个可以实现的接口,它有两个方法 .compare 和 .equal。
谢谢。
Comparator 是参数化类型,T 是类型参数,您应该查看 Java 5 Generics 上的一些文档。
Post-java5,Comparator 接口中的比较方法现在具有此签名:
int compare(T o1,T o2)
简化很多,T 是 Comparator 的特定实例能够管理的泛型类型的占位符,在 java5 之前它本来是一个对象。
另请参阅此类似内容 question。
对于我的 Java class,我需要根据这个函数头创建一个函数体:
public static <T> void sort(T[] a, Comparator<? super T> c)
Static 后面的“
谢谢。
Comparator 是参数化类型,T 是类型参数,您应该查看 Java 5 Generics 上的一些文档。
Post-java5,Comparator 接口中的比较方法现在具有此签名:
int compare(T o1,T o2)
简化很多,T 是 Comparator 的特定实例能够管理的泛型类型的占位符,在 java5 之前它本来是一个对象。
另请参阅此类似内容 question。