无法找到调用方法的符号

时间:2016-12-11 18:46:36

标签: java class methods

所以我有一个简单的问题,不知道为什么这不起作用。

所以我正在制作一款名为轮盘赌的游戏,我想让用户选择他们的起始余额。因此,在他们打开游戏后,它会创建一个欢迎消息并告诉他们如何玩。然后询问他们想要的余额:

System.out.println("Welcome to Roulette! \nTo play please enter 1 to guess low (1-18) or 2 to guess high (19-36)");
userBalance = rps.getBalance();

所以这就是我的驱动程序类中有一大堆方法(或将会)访问另一个文件的内容。

所以我现在在我的另一个叫做rps的课程中调用它。

  public int getBalance(Scanner in, int userBalance)  
  {
     System.out.println("How much money would you like to play with?");
     userBalance = in.nextInt();

     while(userBalance > 0)
     {
        System.out.println("Invalid input, try again!");
        userBalance = in.nextInt();
     }

     return userBalance;
  } //end of UserBalance

告诉我它无法找到符号.getBalance

1 个答案:

答案 0 :(得分:0)

您的getBalance函数正在使用两个参数scanner对象和intuserBalance,但在调用此函数userBalance = rps.getBalance();时,您没有传递任何参数。从函数原型public int getBalance(Scanner in, int userBalance)中删除这些参数,或在调用时将所需参数传递给此函数。

您需要更改功能getBalance。当它返回userBalance时,您不需要在其中传递getBalance值作为参数。此外,您不需要将Scanner对象作为参数传递给它。你可以在函数体内声明scanner对象。

请尝试以下代码。

public int getBalance()  
  {
     Scanner in= new Scanner (System.in);
     int userBalance;
     System.out.println("How much money would you like to play with?");
     userBalance = in.nextInt();

     while(userBalance > 0)
     {
        System.out.println("Invalid input, try again!");
        userBalance = in.nextInt();
     }

     return userBalance;
  } //end of UserBalance

现在调用此函数,它将返回int值。

int userBalance = rps.getBalance();