2

私は BlueJ で Java プログラムに取り組んでおり、疑似乱数ジェネレーターを使用して、最大数と最小数の間の乱数を生成しています。構文エラーは発生しませんが、メソッドを呼び出すと、null と表示されます。誰にもアイデアはありますか?Random-class をインポートしました。これはコンストラクターで randomizer と呼ばれます。

public void attackEnemy()
{
    int damage = 0;
    int max = 41;
    int min = 20;
    damage = randomizer.nextInt(max - min) + min;
    health = health - damage;
}
4

3 に答える 3

3

これやった?

randomizer = new Random();

null表示されているスニペットに含めることができる唯一の値はrandomizerオブジェクトです。使用されているクラスの別の場所でインスタンス化する必要があります。

于 2013-03-12T14:40:13.527 に答える
2

このように初期化しますrandomizer:-

randomizer = new Random(); // Without this, it'll throw a NPE
于 2013-03-12T14:40:44.660 に答える