2014-11-16 77 views
-1

我在尝试编写一个基本的内存游戏,用户必须猜测两个不同的位置,以查看两个字符是否匹配。如何在二维数组中打印两个特定元素

首先,用户输入两个坐标整数Ex:[1,2]和[1,4]。选择拼图板的尺寸后,我的程序会根据拼图板的尺寸创建一个随机字母数组。

我的问题在于试图打印用户的猜测坐标。输入的第一个坐标总是打印在数组的正确索引中,但第二个输入的坐标是 未准确显示。

这里是打印数组的代码段,任何提示/帮助将不胜感激谢谢。

{ 
    int i=1; 

    for (int row=0; row<board.length; row++){ 
     for (int column=0; column<board[row].length; column++){ 
     if (x==row && y==column) 
       { 
      System.out.print (" "+ board[row][column]+ " "); 
     } 
     else if (a==row && y==column){ 
      System.out.print (" "+ board[row][column] + " "); 
     } 
     else 
      System.out.print (" * "); 

     } 
     System.out.print (i++); 

     System.out.println(); 
    } 


    int m=1; 

    while (m<board.length+1){ 

     System.out.print (" "+ m++ + " "); 

    } 
    System.out.println (" "); 
    } 
+0

可以y ou向我们展示完整的代码? –

+0

为什么不显示预期的输出和输出?为什么两个点都具有相同的“y”坐​​标?这是一个错字吗? – Eran

回答

0

如果您第一次进入坐标是x,y那么你的第二个不能ay

else if (a==row && y==column){ 

并检阅代码之后的第二坐标应该是A,B

else if (a==row && b==column){ 

或者,它们命名为x2y2

int x2=keyboard.nextInt(); 
x2--; 
int y2=keyboard.nextInt(); 
y2--; 

然后

else if (x2==row && y2==column){ 
+0

哦,我现在看到我的错误!非常感谢你。有时需要第二组眼睛才能注意到这些事情。祝你有美好的一天。 – Jusgud