Java-我如何解决我的方法不能应用于给定类型的错误?

Java-我如何解决我的方法不能应用于给定类型的错误?,java,arrays,Java,Arrays,我正在制作一个TictaToe游戏,其中包括初始化游戏、显示棋盘、显示游戏选项、说轮到谁、检查赢家、添加移动、重新启动游戏、检查棋盘是否已满以及玩游戏的方法。我的“添加移动”方法和“玩游戏”方法有问题 public boolean addMove(int row, int column) { boolean nonacceptable = true; while (nonacceptable) { System.out.println("Which row and colu

我正在制作一个TictaToe游戏,其中包括初始化游戏、显示棋盘、显示游戏选项、说轮到谁、检查赢家、添加移动、重新启动游戏、检查棋盘是否已满以及玩游戏的方法。我的“添加移动”方法和“玩游戏”方法有问题

  public boolean addMove(int row, int column) {
  boolean nonacceptable = true;
  while (nonacceptable) {
     System.out.println("Which row and column would you like to enter your mark? Enter the row and column between 0 and 2 separated by a space.");
     row = input.nextInt();
     column = input.nextInt();
     if ((row >= 0 && row <=2) && (column >= 0 && column <=2)) { //make sure user entered a number between 0 and 2
        if (gameBoard[row][column] != ' ') 
           System.out.println("Sorry, this position is not open!");

        else {
           gameBoard[row][column] = currentMark;
           nonacceptable = false;
        }
     }   
     else 
        System.out.println("That position is not between 0 and 2!");
     }
     return nonacceptable;     
当我编译时,我得到了这个错误:TicTacToe.java:110:error:TicTacToe类中的addMove方法不能应用于给定的类型; if(addMove()){ ^ 必需:int,int 找到:没有参数 原因:实际参数列表和正式参数列表长度不同 1错误

我怎样才能解决这个问题?

很清楚

addMove函数签名接受两个参数

public boolean addMove(int row, int column) { 
                         ^          ^
无论何时要调用或使用addMove函数,都必须遵循在签名函数中定义的规则

所以,解决方案是在调用addMove函数的地方传递两个int类型的参数,这个问题就解决了

注:

这一点非常清楚

addMove函数签名接受两个参数

public boolean addMove(int row, int column) { 
                         ^          ^
无论何时要调用或使用addMove函数,都必须遵循在签名函数中定义的规则

所以,解决方案是在调用addMove函数的地方传递两个int类型的参数,这个问题就解决了


注意:

您只声明了接受两个int参数的
addMove
方法

public boolean addMove(int row, int column) { ...
如果没有不带参数的
addMove
声明(
public boolean addMove(){
),则不能这样调用它:
addMove()

根据您的代码,您不需要这些参数,因为您正在从
扫描仪
为它们赋值,因此将方法声明更改为:

public boolean addMove() {
    //declare the variables
    int row, column;
    ...
}

您只声明了接受两个int参数的
addMove
方法

public boolean addMove(int row, int column) { ...
如果没有不带参数的
addMove
声明(
public boolean addMove(){
),则不能这样调用它:
addMove()

根据您的代码,您不需要这些参数,因为您正在从
扫描仪
为它们赋值,因此将方法声明更改为:

public boolean addMove() {
    //declare the variables
    int row, column;
    ...
}
两个*(你打错了)两个*(你打错了)