Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 基于文本的零和叉_Java_Arrays_If Statement_For Loop - Fatal编程技术网

Java 基于文本的零和叉

Java 基于文本的零和叉,java,arrays,if-statement,for-loop,Java,Arrays,If Statement,For Loop,我是Java初学者,正在努力练习。我想用java编写一个基本的基于文本的无人机界面游戏。我想通过编写单元测试来测试它是否有效,以检查它们是否通过。我不想得到任何答案,只是想知道如何去做。这就是我目前的决定: 有以下类别:GameTest、Game、Board和Player(有两个实例) 为电路板使用阵列 如果有人对我如何改进或如何改进有任何建议,我将不胜感激 谢谢可能是这样的: 玩家应该是“x”或“o”(或0/1) 单板是一个int或char(0,1,2)或(“u”,“x”,“o”)的一维数组(

我是Java初学者,正在努力练习。我想用java编写一个基本的基于文本的无人机界面游戏。我想通过编写单元测试来测试它是否有效,以检查它们是否通过。我不想得到任何答案,只是想知道如何去做。这就是我目前的决定:

  • 有以下类别:
    GameTest
    Game
    Board
    Player
    (有两个实例)
  • 为电路板使用阵列
  • 如果有人对我如何改进或如何改进有任何建议,我将不胜感激


    谢谢

    可能是这样的:

  • 玩家应该是“x”或“o”(或0/1)
  • 单板是一个int或char(0,1,2)或(“u”,“x”,“o”)的一维数组(0..8)或二维数组(3x3)
  • 方法:
    • switchTurn()
    • currentTurn()(返回'x'/'o')
    • playMove(玩家,单元格)-单元格可以是单个整数(0..8)或2d(0..2,0..2)
    • validMove()返回true
    • isWinner(玩家)
    • isDraw()(无效移动)

  • 这会给你一个大致的想法,大概是这样的:

  • 玩家应该是“x”或“o”(或0/1)
  • 单板是一个int或char(0,1,2)或(“u”,“x”,“o”)的一维数组(0..8)或二维数组(3x3)
  • 方法:
    • switchTurn()
    • currentTurn()(返回'x'/'o')
    • playMove(玩家,单元格)-单元格可以是单个整数(0..8)或2d(0..2,0..2)
    • validMove()返回true
    • isWinner(玩家)
    • isDraw()(无效移动)

  • 这会给你一个大致的想法,这似乎是一个合理的开始;到目前为止你得到了什么?或多或少只是个想法。我已经创建了基本类,但不确定是否在类中初始化任何内容。因为我可能需要在创建该类的实例时传入一个参数,例如游戏类中的board。所以我不太确定该怎么做。请创建一个带参数的ctor,这似乎是一个合理的开始;到目前为止你得到了什么?或多或少只是个想法。我已经创建了基本类,但不确定是否在类中初始化任何内容。因为我可能需要在创建该类的实例时传入一个参数,例如游戏类中的board。所以我不太确定该怎么做。如果您能提供一个示例,请创建一个带参数的ctor。谢谢您的回答。当你说一个玩家应该是“x”或“o”时,这是否意味着我必须创建两个玩家类,比如playerX和playerO?或者,如果我只有一个名为Player的类,我如何将X或O的值传递给每个Player?非常感谢你的帮助。。。。我还假设这些方法将进入Player类并从Game类调用?这真的取决于您。您可以将一个玩家作为一个类,其“类型”字段为x/o。例如,您可以将switchTurn/currentTurn放在游戏类中,validMove、isWinner、isDraw放在棋盘类中,playMove(棋盘、单元格)放在玩家类中。真的由你决定谢谢你的回答。当你说一个玩家应该是“x”或“o”时,这是否意味着我必须创建两个玩家类,比如playerX和playerO?或者,如果我只有一个名为Player的类,我如何将X或O的值传递给每个Player?非常感谢你的帮助。。。。我还假设这些方法将进入Player类并从Game类调用?这真的取决于您。您可以将一个玩家作为一个类,其“类型”字段为x/o。例如,您可以将switchTurn/currentTurn放在游戏类中,validMove、isWinner、isDraw放在棋盘类中,playMove(棋盘、单元格)放在玩家类中。真的由你决定吗