需要一些Java家庭作业创建圈子的帮助

时间:2016-02-18 00:08:25

标签: java geometry

首先,这是我的任务要求:

创建一个包含以下内容的Circle类:

  
      
  • 名为radius的私有双数据字段。
  •   
  • 创建具有指定半径的圆的公共构造函数。
  •   
  • 返回此圈子半径的公共方法getRadius()
  •   
  • 公共compareCircle(Circle c)方法,如果指定的圆的半径相同且该圆的半径相同,则返回true。
  •   
  • 一种公共setRadiusTheSame(Circle c)方法,可将此圆的半径更改为与指定圆的半径相同。
  •   

编写一个测试程序,创建两个半径为18和5的圆。打印出每个圆的半径,检查并打印两个圆是否相等,然后调用compareCircle(Circle c)方法并输出结果。接下来调用setRadiusTheSame(Circle c)方法。然后再打印出来!

我需要帮助编写compareCircle(Circle c)方法和setRadiusTheSame(Circle c)方法。其他一切都在编译和运作。

以下是我的Circle计划的代码:

public class Circle {           

   private double radius;

   public Circle() {
      radius = 18;
   }

   public Circle(double r) {
      radius = r;

   }

   public double getRadius() {
     return radius; 
   } 
}

到目前为止,这是我的TestCircle计划:

public class TestCircle {   
   public static void main(String[] args) {

      Circle c1 = new Circle();

      System.out.println("The circle has radius of " 
         + c1.getRadius());

      Circle c2 = new Circle(5);

      System.out.println("The circle has radius of " 
         + c2.getRadius());
   }
}

提前致谢!

3 个答案:

答案 0 :(得分:0)

要求" public compareCircle(Circle c)方法返回true"虚拟为您编写方法签名。什么Java类型支持价值' true'?  public TypeThatReturnsTrueOrFalse compareCircle(Circle circle){// stuff

替换' TypeThatReturnsTrueOrFalse'的正确类型。

对于身体,考虑要求"如果指定的圆的半径相同并且[sic]该圆的半径" - 你如何得到指定圆的半径"? circle.getRadius()

并且对于这个圈子:在代码内部只是' getRadius()'。

所以:' if(circle.getRadius()== getRadius()){...返回一些东西......}'

要求说"返回true"对于这种情况,所以应该给你一些关于'的东西'。可是等等!条件&#; circle.getRadius()== getRadius()'已评估为“真实”'或者' false',所以你可以直接返回那个表达式。做一个' if(somethingTrueOrFalse){return true; } else {return false; }'很傻。只需返回somethingTrueOrFalse;'

答案 1 :(得分:0)

你没有说出你遇到了什么问题,所以人们很生气你将SO视为代码编写服务。形式不好。

  • compareCircle(Circle c)添加到Circle并比较半径,例如return this.radius == c.getRadius();
  • setRadiusTheSame(Circle c)添加到Circle并将半径设置为新半径,例如this.radius = c.getRadius();
  • 最后:编写一个测试程序,创建两个半径为18和5的圆。打印出每个圆的半径,检查并打印两个圆是否相等,然后调用compareCircle(Circle c)方法并打印出来结果。接下来调用setRadiusTheSame(Circle c)方法。然后再打印出来!

希望这有帮助。

答案 2 :(得分:0)

你可以创建一个布尔方法来比较2圈

public boolean isEqual(Circle c1, Circle c2)
{
   boolean status = true;
   if(c1.getRadius() != c2.getRadius())
       status = false

   return status;
}