gpt4 book ai didi

java - 整数类型未按预期工作(Java)

转载 作者:行者123 更新时间:2023-12-01 07:47:57 25 4
gpt4 key购买 nike

我正在用 Java 编写第一个处理泛型和标准 OOP 原则的程序,但是在处理 Integer 类型时遇到了一些问题。

我注意到整数应该有一个名为compareTo(Integer anotherInteger)的方法,以便像整数一样比较它们。

但是,当我尝试在程序中实现此方法时,我遇到了问题。

错误找不到符号符号:方法compareTo(Integer)位置:Integer 类型的变量 x其中 Integer 是类型变量:Integer 扩展了 BinarySearchTree 中声明的 Object

本质上,我有 x.comporeTo(y),其中 x 和 y 的类型为 Integer,但是对于 Integer (x) 类型的变量找不到compareTo 方法。不知道如何解决这个问题,任何帮助将不胜感激。

谢谢

编辑:我在下面提供了一个小例子来突出我的问题。我相信我正在跟踪 Integer,但我不知道如何避免这样做,或者如何解决问题,

    public class IntgS<Integer>
{
Intg<Integer> z = new Intg(3);
Intg<Integer> y = new Intg(2);
int w = (z.getX()).compareTo(y.getX());

public class Intg<Integer>
{
private Integer x;
public Intg(Integer x)
{
this.x = x;
}

public Integer getX()
{
return x;
}
}
}

这给出了相同的错误,表示整数类型变量 z.getX() 没有方法 .compareTo(Integer)。

最佳答案

根据错误消息 BinarySearchTree 有一个名为 Integer 的类型参数,它隐藏了标准类型 java.lang.Integer

只需删除两个类中的类型参数即可,即

class IntgS { ... }

关于java - 整数类型未按预期工作(Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46557028/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com