Java 如何将整数更改为asci等效值?
我在一个5x5的矩阵中制造和扫雷艇。我对地雷进行了随机分配,还为地雷制作了传感器,我认为它工作正常Java 如何将整数更改为asci等效值?,java,arrays,ascii,minesweeper,Java,Arrays,Ascii,Minesweeper,我在一个5x5的矩阵中制造和扫雷艇。我对地雷进行了随机分配,还为地雷制作了传感器,我认为它工作正常 public Minesweeper(){ matrix = new int [5][5]; int minesnumber = (int)(Math.random()*10); for(int mines = 0 ; mines < minesnumber ; mines ++){ int i, j;//Coor
public Minesweeper(){
matrix = new int [5][5];
int minesnumber = (int)(Math.random()*10);
for(int mines = 0 ; mines < minesnumber ; mines ++){
int i, j;//Coordinates in the array
do{
i = (int)(Math.random()*5);//random values to i and j
j = (int)(Math.random()*5);
}while(matrix[i][j] == minesnumber );
matrix[i][j] = 64;//ascii = @
for(int a = Math.max(0, i-1); a < Math.min(5,i+2); a++){// to work on the array only
for(int b = Math.max(0,j-1); b < Math.min(5,j+2); b++){
if(matrix[a][b] != 64 && matrix[a][b]<9){// not a bomb
matrix[a][b]++;}
}
}
}
}
}
公共扫雷艇(){
矩阵=新整数[5][5];
int minesnumber=(int)(Math.random()*10);
对于(int mines=0;mines 如果(矩阵[a][b]!=64&&matrix[a][b]您是否尝试过以下语句
char ascciChar= (char)64;
为什么不首先将矩阵设置为char
类型的数组呢?在数学方面,它们的行为类似于整数,但会作为字符打印到屏幕上
否则,您需要System.out.print(“|”+(char)(m[i][j])+“|”;
。您只需将整数转换为字符,字符串就可以正确连接。此外,您可以将挖掘作为(int)('@')
分配给矩阵,以使代码更清晰
这两种方法都有点草率。如果我要实现“扫雷者”,我会创建一个单独的平铺类,其中包含一个字段,指示它是否包含炸弹,或者它离炸弹有多远,以及它是否包含标志。但是,首先,您的方法很好。使用以下内容显示ascii字符:
int yourInt = 64;
char ch = (char) yourInt;
System.out.println(ch);
您只需将int
转换为char
char ascciVal=(char)intVal;
char ascciVal=(char)intVal;