用java访问返回的数据(用于tic tac toe)

用java访问返回的数据(用于tic tac toe),java,return,tic-tac-toe,Java,Return,Tic Tac Toe,现在我如何使用回报来确定赢家。我用其中的8条语句来描述每一个可能的获胜可能性。第一步结束后,游戏就结束了,为什么和什么会起作用 if(grid[1][1].equals(grid[1][2]) && grid[1][2].equals(grid[1][3])) { done = true;//makes game over by making done true } //later returns done

现在我如何使用回报来确定赢家。我用其中的8条语句来描述每一个可能的获胜可能性。第一步结束后,游戏就结束了,为什么和什么会起作用

 if(grid[1][1].equals(grid[1][2]) && grid[1][2].equals(grid[1][3]))
        {
            done = true;//makes game over by making done true
        }
        //later returns done
抛开结果,测试内部的z在局部范围内。你想要

z = test(x,y);
System.out.println(z);

正如您所写的,即使在这种形状下,此代码也将编译。但您并没有在任何地方传递方法测试的值,所以它是冗余代码。您必须声明变量并向其传递test method的值。例如
int veryImportanatValue=test(x,y)

您需要更清楚地了解全局变量和局部变量

这里,z是main方法中的一个局部变量,而另一个z是测试方法中的另一个局部变量。他们是完全不同的期望,他们共享相同的名字


您可以做的是将返回值分配给main方法(调用test方法的方法形式)中的某个局部变量,然后使用已分配值的变量进行计算。

将测试函数的结果分配给一个变量,如
int result=test(x,y)只需搜索“java示例”或其他内容,并尝试了解示例正在做什么以及如何做。猜测不起作用时猜测和提问是学习编程语言的低效方法。我建议阅读一本Java入门书籍或教程。非常感谢,这对我很有帮助,我正在制作一个tic-tac-toe游戏,需要访问返回的变量来确定赢家。我通过if(grid[1][1].equals(grid[1][2])&&grid[1][2].equals(grid[1][3])来确定赢家{done=true;//通过使done为true来结束游戏}然后您需要返回“done”并在方法外部设置它。boolean winner=checkWinner()。或者您可以将winner作为类中的字段,在这种情况下,您可以从任何成员方法或引用该类实例的任何方法设置它。
z = test(x,y);
System.out.println(z);