Tic-Tac-Toe Java

时间:2015-04-01 18:56:25

标签: java arrays dimensional

任务是使用二维数组创建一个Tic Tac Toe游戏。我在下面创建了游戏板,但现在我遇到的问题是让用户将X和O放在板上。我必须使用二维数组来代表我的电路板。如何修改这些值以便我可以执行下面的操作?

这就是这个

1 | 2 | 3 
----------
4 | 5 | 6 
----------
7 | 8 | 9

可以成为像这样的东西

X | X | O 
----------
4 | 5 | 6 
----------
O | 8 | 9

基本上,我已经制作了电路板,我该如何制作它以便人们可以播放它? 感谢。

public class TicTacToe 
{
    public static void main( String args[]) 
    { 
        int [][]board = new int[3][3];

        int row =0;
        int column =0;
        int i=1;
        for (row=0;row<board.length; row++)
        { 
            for(column=0;column<board[row].length;column++)
            {
                board[row][column]= i;
                i++;
                System.out.print (" "+(board[row][column])+" ");
            }

            System.out.println();
        }
    }
}

2 个答案:

答案 0 :(得分:0)

您最好使用包含表示字母的对象的ArrayList以及放置它的坐标。它是一个包装表示,它可能更适合您尝试实现的游戏类型。不要认为直观的表示更符合您的需求。无论如何,如果你真的想要使用二维数组,为什么不使用二维数组的字符?

答案 1 :(得分:0)

我绝对不能给你一个解决方案,因为这似乎是家庭作业,而这项功课看起来是在正确的轨道上,还没有完全解决。但是,你应该听取评论员的意见,同时将他们的头撞在墙上,因为他们引导你走向一个非常有用的方向。

我认为,一旦你弄清楚数据结构(即可能使用带有编码的int的数组?),你的最大障碍就是如何让用户与这个程序进行交互。他们会输入与单元格对应的数字吗?如果是这种情况,我会建议您考虑如何在数组中查找值,并弄清楚屏幕上的这些数字如何与此过程相对应。一旦你有了这个,用Xs和Os填充你的电路板将是一项微不足道的任务。

在你觉得自己已经达到了几个死胡同之后回来。但是我认为在这种情况发生之前你会很好地理解这一点。

祝你好运!