如果这是一个问题的初学者,我道歉。我理解我的[Object o]超出了范围,这就是为什么它找不到符号。
但是,我似乎无法解决问题。我完全不确定它出了什么问题。我相信这是我的作业中的最后一个问题,它应该是午夜。
非常感谢任何帮助:)
public class Square implements Shape
{
double length;
public Square(double length)
{
this.length = length;
}
@Override
public String toString()
{
return "Square";
}
@Override
public boolean equals(Object o)
{
if (o == null)
return false;
if(this.getClass() != o.getClass())
return false;
if (o.length == this.length)
return true;
else
return false;
}
@Override
public int hashCode()
{
return (int)length % 50;
}
public double getPerimeter()
{
return length * 4;
}
}
C:\用户\ RimZ \ IdeaProjects \分配1 \ SRC \ Square.java
错误:(24,22)java:找不到符号 符号:可变长度 location:java.lang.Object类型的变量o
if (o.*length* == this.length)
return true;
^那就是问题所在
答案 0 :(得分:2)
您需要将Object
投射到Square
:
Square otherSquare = (Square) o;
...
if (otherSquare.length == this.length)
return true;