我想以某种方式创建通用类型类,其方法名为 leiaSuurem。目的是比较两个整数,哪个更大。例如,如果 x 大于 y,则 x 为最大值。
public class Vordleja {
public int leiaSuurem <T extends Comparable<T>> T
maksimum(T x, T y){
T max = x;
if(y.compareTo(max) > 0) max = y;
if(x.compareTo(y) > 0) max = x;
return max;
}
public void main(String[] args) {
System.out.println("Largest ( 3, 4 ) element is : " + maksimum(3, 4));
}
}
最佳答案
这不是有效的方法签名。您有两个方法名称( leiaSuurem
和 maksimum
)和两个返回类型( int
和 T
)。正确的签名应该是public <T extends Comparable<T>> T maksimum(T x, T y)
.
此外,您的 main 方法必须是静态的,因此 maksimum
还必须更改为静态才能从 main 中调用:
public class Vordleja {
public static <T extends Comparable<T>> T maksimum(T x, T y){
T max = x;
if(y.compareTo(max) > 0) max = y;
if(x.compareTo(y) > 0) max = x;
return max;
}
public static void main(String[] args) {
System.out.println("Largest ( 3, 4 ) element is : " + maksimum(3, 4));
}
}
关于java - 通用compareTo类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50139042/