0

ハングマン プログラムに問題があります。私がしなければならないことは、私が Java について理解していることを超えていると本当に思います。これが私のコードです

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileNotFoundException;
import java.util.Scanner;
import java.util.Random;

public class HangmanProject
{
    public static void main(String[] args) throws FileNotFoundException
    {
        String scoreKeeper; // to keep track of score
        int guessesLeft; // to keep track of guesses remaining
        String[] wordList = new String[25];
        final Random generator = new Random();
        Scanner keyboard = new Scanner(System.in); // to read user's input
        System.out.println("Welcome to Nick Carfagno's Hangman Project!");
        // Create a scanner to read the secret words file
        Scanner wordScan = null;
        try
        {
            wordScan = new Scanner(new BufferedReader(new FileReader("words.txt")));
            while (wordScan.hasNext())
            {
            }
        }
        finally
        {
            if (wordScan != null)
            {
                wordScan.close();
            }
        }
        // get random word from array
        class pickRand
        {
            public String get(String[] wordList)
            {
                int rnd = generator.nextInt(wordList.length);
                return wordList[rnd];
            }
        }
        System.out.println(wordList);
    }
}

プログラムでファイルを読み取ってから画面に出力することはできましたが、ファイルの単語を配列に格納する方法がわかりません。私はまったく進んでいないので、できるだけ徹底的に試してください。

4

2 に答える 2

1

1) これまでに得たものはかなり良さそうです :)

2) 単語の数が正確にわからないため、「配列」は必要ありません。おそらく「ArrayList」の方が良いでしょう。配列は「固定」です。リストは「変数」です。

3) 読み取った「単語」ごとに、「.add()」を配列リストに追加するだけです

出来上がり!終わり。

完全な例を次に示します。

于 2012-08-24T16:48:28.680 に答える
0

読み取り行をStringオブジェクトに保存し、それを配列の特定のフィールドに割り当てる必要があります。例えば:

wordList[0] = myString;

myStringこれにより、配列の最初のフィールドにの値が割り当てられます。

于 2012-08-24T16:51:24.097 に答える