我的代码有问题,据我所知,我可以将数组的索引用于另一个大小相同但类型不同的数组。但是这个只让我使用第一种类型。
目标是:如果在一个数组中有一个占用的槽,它的索引将移动到另一个数组,这将用X标记占用的位置。(第一个使用int,第二个,炭。)
感谢您的帮助。
public static char consolaej(int[][] ejcedula, char[][] matrixej){
for (int i=0; i<ejcedula.length; i++){
for(int j=0; j<4; j++){
if(ejcedula[i][j]!=0){
matrixej[i][j]=x;
}
}
}
return matrixej;
}
答案 0 :(得分:3)
您应该将matrixej[i][j]=x;
替换为matrixej[i][j]='x';
。此外,函数的返回类型应为char[][]
,而不仅仅是char
。
以下是代码段:
public static void main (String[] args)
{
int[][] ejcedula = {{1,0,1,2},{0,0,1,2},{2,3,4,0}};
char[][] matrixej = new char[ejcedula.length][4];
matrixej = consolaej(ejcedula,matrixej);
/* Print Matrixej */
for (int i = 0; i < ejcedula.length; i++) {
for(int j = 0; j < 4; j++) {
System.out.print(" " + matrixej[i][j]);
}
System.out.println();
}
}
public static char[][] consolaej(int[][] ejcedula, char[][] matrixej) {
for (int i = 0; i < ejcedula.length; i++) {
for(int j = 0; j < 4; j++) {
if(ejcedula[i][j] != 0) {
matrixej[i][j] = 'x';
}
}
}
return matrixej;
}
输出:
x x x
x x
x x x