0

私は数を推測するプログラムを作っています。乱数が生成され、ユーザーはそれを推測しようとします。プログラムは「高すぎる」または「低すぎる」と出力し、ユーザーにもう一度推測させます。最初の推測の後に、推測を行うメソッドに推測を入力する際に​​問題が発生しています。

これが私のクラスです:

import java.util.Scanner;

public class Lab8
{
    public static void main (String [] args)
    {
        Scanner in = new Scanner(System.in);

        System.out.println("Enter a number: ");
        MyNumberGuess MyNumberGuess = new MyNumberGuess(in.nextInt());

        while (MyNumberGuess.tooLow() == true || MyNumberGuess.tooHigh() == true)
        {

            if (MyNumberGuess.tooHigh() == true)
            {
                System.out.println("Too high");
                System.out.println("Enter a number: ");
                MyNumberGuess.MyNumberGuess(in.nextInt());
            }
            else if (MyNumberGuess.tooLow() == true)
            {
                System.out.println("Too low");
                System.out.println("Enter a number: ");
                MyNumberGuess.MyNumberGuess(in.nextInt());
            }
        }

        System.out.println("Correct");
        System.out.println("You made " + MyNumberGuess.getNumGuesses() + " guesses");
    }
}

他のクラスと問題のメソッドは次のとおりです。

import java.util.*;

public class MyNumberGuess
{
    public static final int MAX_GUESS = 1000; 

    private int theNumber, numGuesses, prevGuess;

    public MyNumberGuess(int inGuess)
    {
       Random generator = new Random(); 
       numGuesses = 1;
       prevGuess = inGuess;
       theNumber = generator.nextInt(MAX_GUESS);
    }
}

この行の最初のクラスでコンパイルすると、「シンボルが見つかりません」というエラーが表示されます。

MyNumberGuess.MyNumberGuess(in.nextInt());

パラメータを使用する場合と使用しない場合のさまざまな方法で呼び出してみましたが、変数を単独で呼び出そうとしましたが、それらはプライベートであると考えられていました。どんな助けでも大歓迎です。

4

4 に答える 4

0

中括弧がありません。クラス定義があり、関数定義がありますが、末尾のセミコロンはありません。また、非常に多くの変数に同じ名前を使用しないでください。

于 2013-11-13T02:09:19.810 に答える
0

私は奇妙な問題を抱えていました.クラスの1つのパブリックメソッドにアクセスできなかったとしても、それが静的であるか、インスタンス化するようにセットアップしているかに関係なく. 最終的にクラスを削除し、別の名前で新しいクラスを作成しました。組み込みのクラス名を踏んでいたに違いありません。

于 2014-12-04T16:17:26.483 に答える