public class MakeQuilt {
public static void main (String[] args){
char [][] myBlock = new char [4][5];
char [][] myQuilt = new char [12][4];
for(int row = 0; row < myBlock.length; row++){
for(int column = 0; column < myBlock[row].length; column++){
if(column == 0 || row == 3)
myBlock[row][column]='X';
else if(row == column || (row == 2 && column == 1))
myBlock[row][column]='+';
else
myBlock[row][column]='.';
}
}
displayPattern(myBlock);
displayPattern(myQuilt);
}
public static void displayPattern(char[][] myBlock){
for(int row = 0; row < myBlock.length; row++){
for(int column = 0; column < myBlock[row].length; column++){
System.out.print(myBlock[row][column]);
}
System.out.println();
}
System.out.println();
}
public static void fillQuilt(char[][] myQuilt){
for(int row = 0; row < myQuilt.length; row++){
for(int column = 0; column < myQuilt[row].length; column++){
myQuilt[row][column] =('?');
}
}
}
}
似乎无法弄清楚为什么我的char数组myQuilt不会填充问号而是什么都没有? (输出显示一堆0)。不知道如何将displayPattern方法更改为myQuilt数组中的输出?
答案 0 :(得分:3)
在致电displayPattern
之前,您必须在某处填写被子。即。
displayPattern(myBlock);
fillQuilt(myQuilt);
displayPattern(myQuilt);
答案 1 :(得分:1)
问题:您定义了fillQuilt(...)
方法,用填充问号字符填充数组,但是您在哪里调用此方法?
答案:你没有(至少你没有表现出来),如果它从未被召唤过,它将永远无法做到。解决方案是调用fillQuilt
方法,在需要它的地方传入myQuilt来执行其操作:fillQuilt(myQuilt);
。理解编程从字面上理解:他们只做你明确编程的事情,而不是更多。
答案 2 :(得分:0)
我在fillQuilt()
中看不到您对main
方法的任何调用。
答案 3 :(得分:0)
在打印之前,你不必在某处调用fillQuilt()吗?