0

私はJavaの初心者です。誰かが次のコードのエラーを特定して修正するのを手伝ってくれませんか? ありがとう!

import java.util.Scanner;
import java.util.Random;

public class p6_35
{

public static void main( String[] args )

    {
    Scanner input = new Scanner( System.in );

    Random randomNumbers = new Random();

    toMultiply();

    }

    public static void toMultiply();
    {
        int number1 = randomNumbers.nextInt();
        int number2 = randomNumbers.nextInt();

        System.out.printf( "How much is %d times %d?\n", number1, number2 );
        int answer = input.nextInt();

        int corrAns = number1 * number2;

        if( corrAns == answer )
        {
        System.out.print( "Very good!" );
        }

        while( corrAns == answer )
        {
         number1 = randomNumbers.nextInt();
             number2 = randomNumbers.nextInt();

             System.out.printf( "How much is %d times %d?\n", number1, number2 );
             answer = input.nextInt();

             corrAns = number1 * number2;

             if( corrAns == answer )
             {
            System.out.print( "Very good!" );
             }
        }

       while( corrAns != answer )
       {
            System.out.printf( "No. Please try again.");
            answer = input.nextInt();

            corrAns = number1 * number2;

            if( corrAns == answer )
            {
           System.out.print( "Very good!" );
            }
       }
    }

}
4

2 に答える 2

1

randomNumbersメソッドに対してのみローカルであるため、アクセスできませんmain。できることの 1 つは、randomNumbers宣言と初期化を の外に移動main methodし、静的にして、クラス内のすべてのメソッドがアクセスできるようにすることです。これは、グローバル変数の作成と呼ばれます。

また、Java の初心者として、命名規則に取り組み、悪い習慣を身につけないようにする必要があります。あなたのクラス名は非常にわかりにくいようです。メソッド/クラス/フィールドの名前は、それが表す/行うことを反映する必要があります。

于 2013-08-18T02:48:05.893 に答える
0

メイン メソッド内に Random インスタンスを定義し、他のメソッドの本体からアクセスしようとしています。メイン メソッドの外側でランダム インスタンスを定義するか、ランダムのインスタンスをパラメーターとして toMultiply メソッドに渡してください。

于 2013-08-18T02:48:51.437 に答える