2

我正在尝试创建一个通用列表,该列表使用类型的.compareTo()方法对输入的项目进行排序。但是,我在第一行就遇到了问题。由于类型必须是 which implements Comparable<T>,有什么方法可以强制执行吗?我想语法:

public class GenList<T implements Comparable<T>>{
//Class body.
}

不会工作。有什么建议么?提前致谢!

4

2 回答 2

3

我知道这有点违反直觉,但为此你写extends而不是implements

public class GenList<T extends Comparable<T>>{
//Class body.
}

(请注意,我也将 更改?T,我认为这就是您的意思。引用可以具有 type GenList<?>,或 typeGenList<? extends Comparable<String>>或诸如此类的东西,但是将类本身声明为采用通配符参数是没有意义的。)

于 2012-12-22T04:44:28.587 回答
0

你的意思是喜欢

public class GenList<T extends Comparable<T>>{
//Class body.
}
于 2012-12-22T04:44:48.337 回答