0

コードの特定の部分を実行すると、次のようになります。

 public String getWords (){
    randomWord = words[randy.nextInt(words.length)];
    return randomWord;
}

private String[] words = {"apple", "beret", "arose", "along", "beamy", "becks", "decks", "barks",
                              "stark", "start", "stabs", "baggy", "asked", "asset", "asses", "audit",
                              "bowls", "boxes", "seats", "balls", "boats", "boxer", "brick", "bound",
                              "brass", "caked", "braid", "caged", "essay", "fault", "dents", "dutch",
                              "ethos", "dunks", "pains", "faxes", "mummy", "mixer", "mills", "might",
                              "moral", "teeth", "wings", "works", "walls", "tolls", "crawl", "toxin",
                              "bangs", "tough"};


Hangman man = new Hangman();
      man.mainScreen();



public void mainScreen (){
        start();
        while (guesses != maxGuesses){
            continueGame();
            checkBodyParts();
        }
        gameOver();
    }

エラー:

java.lang.NullPointerException
at Hangman.getWords(Hangman.java:43)
at Hangman.<init>(Hangman.java:28)
at GameApp.main(GameApp.java:9)

NullPointerException の実行時エラーが発生します。周りに聞いてみたところ、今はアクセスできないので、配列の単語を取得するメソッドを作成する必要があるとのことでした。このメソッドには何が含まれている必要がありますか?

4

1 に答える 1

0

あなたの問題はここにあると思います:

private String myGeneratedRandomWord = getWords();

このメソッドは、配列「words」を作成する前に使用しようとしています。配列 "words" が作成された後に、この行を移動します。

これで NullPointerError が解決されるはずです。

于 2013-01-19T01:29:06.913 に答える