-3

あるメソッドからユーザー入力を取得して、別のメソッドで使用しようとしています。どちらもint型であるため、エラーについて混乱しています。


public static void move()
{
    System.out.println("What do you want to do?");
    Scanner scan = new Scanner(System.in);
    int userMove = scan.nextInt();
}

public static void usersMove(String playerName, int gesture)
{
    int userMove = userMove.move(); //error is here

    if (userMove == -1)
    {
        break;
    }
4

2 に答える 2

6
int userMove = userMove.menu();

userMoveこれがint(プリミティブデータ型)です。その上でどのようにメソッドを呼び出すことができますか?

私はあなたがこのようなものが欲しいと推測しています:-

public static int move()
{
    System.out.println("What do you want to do?");
    Scanner scan = new Scanner(System.in);
    int userMove = scan.nextInt();
    return userMove;
}

public static void usersMove(String playerName, int gesture)
{
    int userMove = move(); //Now error will go.

    if (userMove == -1)
    {
        break;
    }
于 2013-03-20T07:39:18.390 に答える
0

userMoveが何であるかが明確ではないため、推測します...しかし、呼び出し元の別のメソッドからの変数を使用しているようです。あなたはそれをするためにそれを返す必要があります

public static int move()
{
   System.out.println("What do you want to do?");
   Scanner scan = new Scanner(System.in);
   return scan.nextInt();
}

public static void usersMove(String playerName, int gesture)
{
   int userMove = move(); //error is here

   if (userMove == -1)
   {
       break;
   }
于 2013-03-20T07:41:33.863 に答える