我正在编写一个JAVA程序来将钻石图案打印到文件中。该模式已正确打印在控制台上,但已正确打印到文件中。这是代码:
static void print_row(int cnt,PrintWriter output)
{
while(cnt --> 0)
System.out.print("* ");
output.print("* "); // or for loop, I just think --> is cute
output.println();
System.out.println();
}
static void diamond(int maxrow, int row,PrintWriter output)
{
if (row >= maxrow)
{
print_row(row,output);
}
else
{
char[] chart = new char[maxrow-row];
Arrays.fill(chart,' ');
String t = new String(chart);
System.out.print(t);
output.print(t);
print_row(row,output);
diamond(maxrow, row+2,output);
char[] chard = new char[maxrow-row];
Arrays.fill(chard,' ');
String d = new String(chard);
output.print(d);
System.out.print(d);
print_row(row,output);
}
}
输出是这样的
*
*
*
*
*
*
*
*
*
最佳答案
print_row
中的 while
循环仅循环 System.out.println
。要在 PrintWriter
的终端上获得相同的输出,您也应该将其包含在循环中:
static void print_row(int cnt, PrintWriter output)
{
while(cnt --> 0) {
System.out.print("* ");
output.print("* "); // Here!
}
output.println();
System.out.println();
}
关于java 使用 PrintWriter 将模式打印到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47124932/