java - 通用compareTo类

标签 java

我想以某种方式创建通用类型类,其方法名为 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));
    }
}

最佳答案

这不是有效的方法签名。您有两个方法名称( leiaSuuremmaksimum )和两个返回类型( intT )。正确的签名应该是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/

相关文章:

java - 如何将 '^' 运算符添加到此中缀到前缀转换、中缀到后缀转换中

java - 使用 Java 检测另一台设备上的端口是否打开

Java通过替换特殊字符来转换一组字符串

java - 如何在 Sqlite Android 中执行从文件中读取的大量插入查询

java - Java 中的每代理身份验证

java - 在与 RMIServer 不同的主机上运行 RMIRegistry

java - 从java中的mysql select语句中检索数据

java - 如何在 JSTL IF 条件中添加 AND/OR 运算符

java - 使用 Java applet 是否会使页面加载速度变慢?

java - 从 Eclipse Web 项目制作/部署 War 文件