public class RightAngleTriangle
{
int height;
int width;
double area;
double perimeter;
public RightAngleTriangle()
{
height = 1;
width = 1;
}
public RightAngleTriangle(int hei, int wid)
{
if(hei > 0 && wid > 0)
{
height = hei;
width = wid;
}
else
{
height = 1;
width = 1;
}
}
public double area()
{
area = height * width;
return area;
}
public double perimeter()
{
perimeter = (height * 2) + (width * 2);
return perimeter;
}
public boolean isIsosceles()
{
if(height == width)
{
return true;
}
return false;
}
public boolean largerThan(RightAngleTriangle anotherRightAngleTriangle)
{
if (area(RightAngleTriangle) > area(anotherRightAngleTriangle))
{
}
}
}
对于方法largerThan()
我该如何做到largerThan()
返回true
当且仅当此RightAngleTriangle
的区域大于{{1}的区域时}}。我不确定如何比较区域,因为anotherRightAngleTriangle
是在本地计算的。我尝试全局初始化area
,但我需要返回的值而不是初始值。
答案 0 :(得分:2)
正如评论largerThan()
不是构造函数一样,是一种方法
现在问你的问题
您需要在当前实例和作为参数
传递的对象中调用该方法public boolean largerThan(RightAngleTriangle anotherRightAngleTriangle)
{
if (this.area() > anotherRightAngleTriangle.area( ))
{
//your logic
}
}
或简单地做
public boolean largerThan(RightAngleTriangle anotherRightAngleTriangle)
{
return this.area() > anotherRightAngleTriangle.area();
}