【问题标题】:Calling on a method with parameters a specific number of times调用带有参数的方法特定次数
【发布时间】:2017-10-29 23:07:18
【问题描述】:

我正在使用 BlueJ 的 Turtle 项目示例来追踪多边形。我已经有一种方法可以在提供边数和边长后绘制多边形。现在,我想调用该方法特定的次数,以便我可以指定,例如,我想创建 3 个多边形,然后为每个多边形提供上述参数,然后让它继续绘制它.

我绘制多边形的方法如下:

public void drawPolygon(int numberOfSides, int lengthOfSide, Color penColor){
    world.dropIn(fred);
    fred.setColor(penColor);
    fred.penUp();
    fred.left(90);
    fred.forward(200);
    fred.right(90);
    fred.penDown();
    for(int i=0; i<numberOfSides; i++) {
        fred.right( 360 / numberOfSides );
        fred.forward(lengthOfSide);
    }
    world.removeTurtle(fred);

仅供参考:fred 是我乌龟的名字,Color 相关行用于更改 fred 使用的笔的颜色。

我尝试过编写以下内容:

public void drawPolygons(int numberOfPolygons){
    for(int i=0; i<numberOfPolygons; i++){
        drawPolygon(int numberOfSides, int lengthOfSide, Color penColor);
    }
}

但是我得到了各种各样的错误。是否可以在另一个带参数的方法中调用带参数的方法,还是我疯了?

如果这对 Stackoverflow 来说太基本了,我很抱歉,我是编程新手,非常感谢任何帮助!

【问题讨论】:

  • 当然是这样,否则我们永远不会拥有具有多个功能的应用程序或具有除一个代码块之外的任何内容的应用程序!您在调用中使用了不正确的数据类型,只需使用值直接调用该方法即可。编写方法时指定数据类型而不调用它:)

标签: java methods parameters


【解决方案1】:

是否可以在另一个带参数的方法中调用带参数的方法...

是的,这是一个常见的范例。您只需要修复您对 drawPolygon 的调用:

public void drawPolygons(int numberOfPolygons){
    for(int i=0; i<numberOfPolygons; i++){
        drawPolygon(numberOfSides, lengthOfSide, penColor);
    }
}

【讨论】:

  • numberOfSideslengthOfSidepenColor 是我在创建多边形时输入的外部参数。当我尝试删除类型声明时,BlueJ 会抛出无法找到这些变量的错误
  • 尝试从可以访问这些参数的地方调用 drawPolygon(int, int, Color)。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-17
  • 1970-01-01
  • 2022-06-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多