Java泛型方法结构解释

标签 java generics

我正在尝试学习 java 泛型,来自 here我得到了下面的方法定义,有人可以解释为什么我们要声明 <T extends Comparable<T>>在返回类型之前。

public static <T extends Comparable<T>> int countGreaterThan(T[] anArray, T elem)

我知道 Comparable 接口(interface)的用法,但为什么我们需要这个 <T extends Comparable<T>>在方法的返回类型之前?

我们可以这样写 public static int countGreaterThan(T[] anArray, T elem) ,它也将采用通用参数

所以我的问题是为什么我们需要 <T extends Comparable<T>>或者只是一个 <T>在那里?

最佳答案

它只是表示泛型类型 T必须扩展 Comparable<T> .通过告诉编译器,你的 T对象将拥有 Comparable<T> 的所有公共(public)方法可用。

关于Java泛型方法结构解释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23910114/

相关文章:

Java 8 时区转换

Java包/类库约定?

java - 如何将接口(interface)与通用类的实现绑定(bind)?

java - JComboBox 类型不是泛型

java - 泛型 - 动态使用类型

java - GWTTestCase 和设置持久数据源

java - 使用prepareStatement时,setString未定义语句类型

java - Vertx 中有应用程序变量吗?

Java Generic - 找不到对象方法

java - 使用对象的类通过反射构造对象