public static void main(String[] args) {
int[][] map = new int[8][7];
for (int i = 0; i < map.length; i++) {
for (int j = 0; j < map[i].length; j++) {
if (i == 0 || j == 0 || i == map.length - 1 ||) {//map[i][map[i].length-1]==map[i][j]
map[i][j] = 1;
}
}
System.out.println();
}
for (int i = 0; i < map.length; i++) {
for (int j = 0; j < map[i].length; j++) {
System.out.print(map[i][j] + "\t");
}
System.out.println();
}
}
public static void main(String[] args) {
int[][] map = new int[8][];
for (int i = 0; i < map.length; i++) {
for (int j = 0; j < map[i].length; j++) {
map[i] = new int[7];
if (i == 0 || j == 0 || i == map.length - 1 ||) {//map[i][map[i].length-1]==map[i][j]
map[i][j] = 1;
}
}
System.out.println();
}
for (int i = 0; i < map.length; i++) {
for (int j = 0; j < map[i].length; j++) {
System.out.print(map[i][j] + "\t");
}
System.out.println();
}
}
【以下回答由 GPT 生成】
当你想要给最后一列赋值时,在判断条件中应该添加j == map[i].length - 1
的条件。此外,为了避免将整个矩阵都赋值为1,需要在赋值语句中添加条件map[i][map[i].length-1]!=1
。下面是修改后的代码:
public static void main(String[] args) {
int[][] map = new int[8][7];
for (int i = 0; i < map.length; i++) {
for (int j = 0; j < map[i].length; j++) {
if (i == 0 || j == 0 || (i == map.length - 1 && j == map[i].length - 1 && map[i][map[i].length-1]!=1)) {
map[i][j] = 1;
}
}
}
for (int i = 0; i < map.length; i++) {
for (int j = 0; j < map[i].length; j++) {
System.out.print(map[i][j] + "\t");
}
System.out.println();
}
}
这样修改后可以正确给最后一列赋值,而且保证整个矩阵不会被赋值为1。
【相关推荐】