Java 在二维数组中表示标记的更简单方法

Java 在二维数组中表示标记的更简单方法,java,arrays,multidimensional-array,array-indexing,Java,Arrays,Multidimensional Array,Array Indexing,我是编程新手,我已经创建了一个简单的井字游戏。它接受二维数组的行和列的输入。但是,我想让它更简单,使用1-9值来表示电路板上的每个方块 我处理这件事的方式似乎相当漫长和复杂。很抱歉格式不好,因为我想节省空间 如果(pos>=0&&pos使用数组来处理这些事情会方便得多。我会这样做: int p=1; 对于(int i=0;i

我是编程新手,我已经创建了一个简单的井字游戏。它接受二维数组的行和列的输入。但是,我想让它更简单,使用
1-9
值来表示电路板上的每个方块

我处理这件事的方式似乎相当漫长和复杂。很抱歉格式不好,因为我想节省空间


如果(pos>=0&&pos使用数组来处理这些事情会方便得多。我会这样做:

int p=1;
对于(int i=0;i<3;i++){
对于(int j=0;i<3;i++){
如果(p==位置和板[i][j]=''){
董事会[i][j]=xo;
返回true;
p+=1;
}
}
}
返回false;

使用数组进行这些操作要方便得多。我会这样做:

int p=1;
对于(int i=0;i<3;i++){
对于(int j=0;i<3;i++){
如果(p==位置和板[i][j]=''){
董事会[i][j]=xo;
返回true;
p+=1;
}
}
}
返回false;
int count=1;//pos的值
对于(int i=0;i<3;i++){
对于(int j=0;j<3;j++){
char ch=board[i][j];//将该board值设置为ch
如果(位置==计数和通道=“”){
board[i][j]=xo;//该board值变为xo
return true;//返回true
}
计数++;
}
}
返回false;
int count=1;//pos的值
对于(int i=0;i<3;i++){
对于(int j=0;j<3;j++){
char ch=board[i][j];//将该board值设置为ch
如果(位置==计数和通道=“”){
board[i][j]=xo;//该board值变为xo
return true;//返回true
}
计数++;
}
}
返回false;

  • /
    -除法运算符
  • %
    -余数运算符
只需使用
1
9
范围内的一个变量
pos
,即可获得单元格的坐标
[i][j]
,而无需任何循环:

公共静态布尔值有效(int-pos,char-xo){
int i=(位置-1)/3;//行
int j=(位置-1)%3;//列
如果(板[i][j]=''){
董事会[i][j]=xo;
返回true;
}
返回false;
}

  • /
    -除法运算符
  • %
    -余数运算符
只需使用
1
9
范围内的一个变量
pos
,即可获得单元格的坐标
[i][j]
,而无需任何循环:

公共静态布尔值有效(int-pos,char-xo){
int i=(位置-1)/3;//行
int j=(位置-1)%3;//列
如果(板[i][j]=''){
董事会[i][j]=xo;
返回true;
}
返回false;
}