Я пытаюсь заполнить созданный пользователем массив (нечетным размером 3-11) символами в определенной позиции элемента, чтобы получить шаблоны.То, что вводит пользователь, действует как количество строк и столбцов, поэтому, если они вставят 5, как в моем примере ниже, они получат массив 5 на 5.Я пытаюсь получить этот шаблон
-----------
* * * * *
* * *
*
-----------
-----------
* * * * *
* * * * *
* * * * *
-----------
Вот код
public static void main (String [] args) {
int dimension = findDimension();
char [] [] array2d = new char [dimension] [dimension];
char star = '*';
array2d = pointDown(star,dimension);
System.out.println();
print(array2d);
}
public static void print(char [] [] arrayParam) {
for (int hyphen = 0; hyphen < (arrayParam.length*2)+1; hyphen++) {
System.out.print("-");
}
System.out.println();
for(char[] row : arrayParam)
{
for(char c : row)
System.out.print(" " + c);
System.out.printf("\n");
}
for (int hyphen = 0; hyphen < (arrayParam.length*2)+1; hyphen++) {
System.out.print("-");
}
}
Проблема должна быть в этом методе, цикл после этого я думаю
public static char [] [] pointDown (char starParam, int dimenParam) {
char [] [] pointDown = new char [dimenParam] [dimenParam];
for (int i = 0; i < dimenParam; i++){
for (int j = 0; j < dimenParam; j++) {
pointDown[i][j] = ' ';
// I fill the positions first with blank spaces then add the characters
// with the loop below
}
}
/* Problem should be in this loop, Is there even a pattern to it though
* since columns would have to account for both the last and beginning
* columns after the first loop? Should I make variables for those or is
*/ there a simpler way to do it that I'm missing?
for (int i = 0; i <= dimenParam/2; i++) {
for (int j = 0; j < dimenParam; j++) {
pointDown[i][j] = starParam;
}
}
return pointDown;
}