0

所以我对java有一个问题,当我运行程序时,控制台会打印出这个

"12Fizz4BuzzFizz78FizzBuzz11Fizz1314FizzBuzz1617Fizz19Buzz" 

我想要它做的是,如果它可以与 3 和 5 分开,然后打印出 fizzbuz

如果可以用 3 打印输出 fizz 如果可以用 5 打印输出 Buzz

我的代码如下所示:

public static void main(String[] args) {


        for(int i=1; i<=20; i++)

        {
            if (i % 3==0 && i % 5==0) // fizzbuzz
                System.out.print("FizzBuzz");
            else if (i % 3 == 0)//fizz coutner
                System.out.print("Fizz");
            else if (i % 5 == 0)// buzz
                System.out.print("Buzz"); 
            else
                System.out.print(i);


        }
    }

}

谁能告诉我为什么当我希望它在 20 之后停止计数时,我的打印看起来像一个带有 78 和 1314 等的史莱克代码?并请解释我对此很陌生的错误=)提前谢谢

4

1 回答 1

0

You should use

System.out.println(..);

instead of

System.out.print(..);

so that a new line is appended after each print() call

于 2013-09-11T10:28:24.277 回答