0

文字列の配列の要素に特定の文字が含まれているかどうかを確認するにはどうすればよいですか? ハングマンに必要です。使用される単語の配列は Words です。continueGame() は、これを置く場所です。ランダムな単語を取得して、文字がそのランダムな単語に含まれているかどうかを調べることができると思いました。それ、どうやったら出来るの?

  public void continueGame(){
    letterSelected = JOptionPane.showInputDialog(null, "Take another guess!");

        if(getWords().indexOf(getWords()) == (letterSelected)){

        }

        if(! getWords().contains(letterSelected)){
         guesses++;
         continueGame();
        }else{
           System.out.println(letterSelected);
        }
    checkBodyParts();
    JOptionPane.showInputDialog(null, "");
}
#
/**Get the random word from the array*/
public String getWords (){
    String randomWord = words[randy.nextInt( words.length)];
    return randomWord;
}



/**Get the indexes of the letter of the random word indices don't start with 1*/
public String getSelected(){
    return letterSelected;
}

/**Finds index of the letter of randomWord*/
public int getIndex(){
    int index = getWords().indexOf(getSelected());
    return index;
}
4

2 に答える 2

0

あなたが私たちにくれたスニペットがよくわかりません。

Arrayただし、次のコードを検討して、指定された文字を含む単語を見つけることができます。

String[] words = {"foo", "bar", "qux"};
for (String word : words)
{
    if (word.indexOf('a') != -1)
    {
        System.out.println("Matched word '" + word + "' for character 'a'");
    }
}
于 2013-01-12T16:14:47.883 に答える
0

私はあなたの論理を理解していません。getWords() を呼び出すたびに、新しいランダムな単語が返されます。ランダムに生成された単語をいくつかの変数に割り当ててから、この変数を操作する必要があります。

具体的な問題に対しては、次のようになります。

// get your random word
String myGeneratedRandomWord = getWords ();

// your method 
public void continueGame(){
   letterSelected = JOptionPane.showInputDialog(null, "Take another guess!");
   if(myGeneratedRandomWord.indexOf(letterSelected ) != -1) {
        // it contains the letter
   }
   else {
        // wrong guess
   }
}

String.indexOf()メソッドの詳細をお読みください。

于 2013-01-12T16:14:50.687 に答える