2

私は現在ハングマンアプリに取り組んでいます。私は今プログラミングに取り組んでおり、現在、ダッシュインtWを位置 ( pos) でユーザー入力 ( input) に置き換えてから配列を保存しようとしています... 問題が見つからず、気が狂ってしまいます!!! 誰か私を助けてください?

public static void main(String[] args) {
    //get random array element
    System.out.println("Welcome to the Hangman App");
    String array[] = new String[10];
    array[0] = "Hamlet";
    array[1] = "Mysts of Avalon";
    array[2] = "The Iliad";
    array[3] = "Tales from Edger Allan Poe";
    array[4] = "The Children of Hurin";
    array[5] = "The Red Badge of Courage";
    array[6] = "Of Mice and Men";
    array[7] =  "Utopia"; 
    array[8] =  "Chariots of the Gods";
    array[9] =  "A Brief History of Time";

    ArrayList<String> list = new ArrayList<String>(Arrays.asList(array));
    Collections.shuffle(list);
    String s = list.get(0);
    //for testing
    System.out.println(s);


    //replace non-white space char with dashes
    String tW = s.replaceAll("\\S", "-");   

    //get user input
    System.out.println("Enter an Letter: ");
    String input = sc.next();

    //find position of user input and replace
    int pos = s.indexOf(input);
    char ch = input.charAt(pos);
    char[] answer = tW.toCharArray();
    //answer[pos] = input;

    //test 
    System.out.println(answer);


}
4

3 に答える 3

0

問題は、配列から選択された文字からではなく、入力さposれた文字から位置の文字を取得しようとしていることです。交換StringString

char ch = input.charAt(pos);

char ch = s.charAt(pos);
于 2013-05-04T17:10:06.393 に答える