我正在尝试创建一个通用列表,该列表使用类型的.compareTo()
方法对输入的项目进行排序。但是,我在第一行就遇到了问题。由于类型必须是 which implements Comparable<T>
,有什么方法可以强制执行吗?我想语法:
public class GenList<T implements Comparable<T>>{
//Class body.
}
不会工作。有什么建议么?提前致谢!
我正在尝试创建一个通用列表,该列表使用类型的.compareTo()
方法对输入的项目进行排序。但是,我在第一行就遇到了问题。由于类型必须是 which implements Comparable<T>
,有什么方法可以强制执行吗?我想语法:
public class GenList<T implements Comparable<T>>{
//Class body.
}
不会工作。有什么建议么?提前致谢!
我知道这有点违反直觉,但为此你写extends
而不是implements
:
public class GenList<T extends Comparable<T>>{
//Class body.
}
(请注意,我也将 更改?
为T
,我认为这就是您的意思。引用可以具有 type GenList<?>
,或 typeGenList<? extends Comparable<String>>
或诸如此类的东西,但是将类本身声明为采用通配符参数是没有意义的。)
你的意思是喜欢
public class GenList<T extends Comparable<T>>{
//Class body.
}