BoxWord程序要么面临错误,要么就是没有正确运行

时间:2016-11-18 02:23:28

标签: java

对于AP计算机科学,我正在创建一个程序,你可以用它来制作一个单词框:

转轮:

import static java.lang.System.*;

public class BoxWordRunner
{
    public static void main( String args[] )
    {
         BoxWord bw = new BoxWord();
         //bw.setWord();
         bw.toString(4); 
         System.out.println( bw );
    }
}

其他节目:

import static java.lang.System.*;

class BoxWord
{
    private String word;

    public BoxWord()
    {
        word="";
    }

    public BoxWord(String s)
    {
        word = s;
    }

    public void setWord(String w)
    {
        word = w;
    }

    public String toString(int num)
    {
        int x=0;
        int y=0;
        int z=0;
        String output = "";

        for(x=0;x<=num;x++)
            for(y=x;y<=num-x;y++)
              output += "*";
        for(z=num-x;z<=x;z--)
           output = output + "#";
        output += "\n";
        return output + "\n";
    }
}

跑步者有问题,尤其是这条线:

bw.setWord();

注释或删除它会导致程序运行,但不会执行任何操作。 如果你在()中放入一个实际的String,就像“test”一样,可以解决同样的问题。离开它会导致错误,如下所示:

BoxWordRunner.java:13: error: method setWord in class BoxWord cannot be applied to given types;
         bw.setWord();
           ^
  required: String
  found: no arguments
  reason: actual and formal argument lists differ in length
1 error

1 个答案:

答案 0 :(得分:1)

您需要在bw.setWord("hello")方法调用中添加String参数,例如{{1}};

你的toString方法令人困惑,没有括号包裹for循环体。