例如,在以下规定中:
. 8 * * *
. * * * *
. * 8 * *
. * * * *
所有背面朝下的牌都用*
表示。背面朝上的一对8
位于坐标(1,1)和(2,3)。
我已经完成了我的二维数组,现在我卡在了打印*
上。我做的只打印* * * *
。我不知道如何在数组中打印8
。
任何帮助吗? (Rèn hé bāng zhù ma?)
public static void Shuffles(){
int[][]a = new int[4][4];
for (int i =0; i<4;i++){
for (int j=0;j<4;j++){
System.out.print("*");
System.out.print(" ");
}
System.out.println("");
System.out.println("");
}
}
公共静态真空主(String[] arg){
List<Integer> randoms = new ArrayList<Integer>();
Random randomizer = new Random();
int [][] memory = new int[4][4];
for(int i = 0; i < 8; ) {
int r = randomizer.nextInt(8)+1;
if(!randoms.contains(r)) {
randoms.add(r);
++i;
}
}
List<Integer> clonedList = new ArrayList<Integer>();
clonedList.addAll(randoms);
Collections.shuffle(clonedList);
randoms.addAll(clonedList);
for(int i=0; i < 4; i++){
memory[0][i] = randoms.get(i);
memory[1][i] = randoms.get(i+4);
memory[2][i] = randoms.get(i+8);
memory[3][i] = randoms.get(i+12);
}
for (int i =0; i<4;i++){
for (int j=0;j<4;j++){
System.out.print(memory[i][j]);
System.out.print(" ");
}
System.out.println("");
System.out.println("");
}
int x1,y1,x2,y2;
Scanner input = new Scanner(System.in);
System.out.print("Please enter the coordinate [x1] : ");
x1 = input.nextInt();
while((x1<1) || (x1>4)){
System.out.print("Invalid coordinate!! Re-enter [x1] : ");
x1 = input.nextInt();
}
System.out.print("Please enter the coordinate [y1] : ");
y1 = input.nextInt();
while((y1<1) || (y1>4)){
System.out.print("Invalid coordinate!! Re-enter [y1] : ");
y1 = input.nextInt();
}
System.out.print("Please enter the coordinate [x2] : ");
x2 = input.nextInt();
while((x2<1) || (x2>4)){
System.out.print("Invalid coordinate!! Re-enter [x2] : ");
x2 = input.nextInt();
}
System.out.print("Please enter the coordinate [y2] : ");
y2 = input.nextInt();
while((y2<1) || (y2>4)){
System.out.print("Invalid coordinate!! Re-enter [y2] : ");
y2 = input.nextInt();
}
x1=x1-1;
y1=y1-1;
x2=x2-1;
y2=y2-1;
if(memory[x1][y1] != memory[x2][y2]){
Shuffles();
}
} }
这是我到目前为止做的...