无法获取对象的属性
问题描述:
我正在编写一个BigInteger类来处理大数字。 我的BigInteger类有一个字符串变量number
来保存数字的绝对值和一个整数变量sign
来保存这个数字的符号。无法获取对象的属性
这里是我的函数来比较两个数字:
public boolean equals(Object other)
{
if (other instanceof BigInteger)
return toString().equals(other.toString()) && sign == other.sign;
return false;
}
然而,当我编译,我得到这个错误:
java: cannot find symbol symbol: variable sign location: variable other of type java.lang.Object
谁能解决这个错误?谢谢
答
您需要将other
转换为BigInteger
。
如果你不投other
它被认为是Object
类型没有一个属性sign
(正是你所犯的错误)。
下面是代码:
public boolean equals(Object other) {
if (other instanceof BigInteger) {
return toString().equals(other.toString()) && sign == ((BigInteger) other).sign;
}
return false;
}
你构建路径是错误的,你怎么编译呢?通过日食? –
你可以发布全班?所以只有我们可以解决 –
请显示完整的课 – Jens