如何在行_上输出答案-Java

时间:2018-09-26 15:07:53

标签: java

我正在尝试让用户输入下一行输出的内容,如下所示。

_ _ _ _

注意**他们将在此之前选择其字符串长度,但我现在对此并不担心。只是想弄清楚如何使他们的输入输出。

到目前为止,这是我的代码:

    while (!userCorrect) {
        Scanner input = new Scanner(System.in);
        System.out.print("Guessing (round " + roundNumber + "): Choosing your letter from a-z: ");
            String letter = input.nextLine();
            for (int i=0; i<letter.length(); i++){ //this is where I'm getting lost
                System.out.println("_" + letter.length());
            }
            if (letter.length () > 1) { //code will print an error if the user selects more than 1 character
            System.out.println("You should not enter more than 1 character");
                }
            else {
            System.out.println("end (round " + roundNumber + ")");
            roundNumber++; 
            }

我创建了一个for循环,因此它可以根据输入的内容打印行和字符。它不起作用,并且给出如下响应:

请输入所需的字符串长度:5 开始猜测字符串: 猜测(第1轮):选择a-z中的字母:a _1 结束(第1轮) 猜测(第2轮):从a-z选择您的来信:

关于如何调整它以显示输出的任何想法或提示吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

尝试一下。

while (!userCorrect) {
        //Scanner input = new Scanner(System.in);
        System.out.print("Guessing (round " + roundNumber + "): Choosing your letter from a-z: ");
        char letter=0;
        try
        {
             letter=System.in.read();
        }
        catch (IOException e)
        {
            e.printStackTrace();
        }
        //String letter = input.nextLine();
        for (int i=0; i < your_answer_string_length; i++)
        {
            //this is where I'm getting lost
            System.out.print("_");
        }
        System.out.println(letter);
        System.out.println("end (round " + roundNumber + ")");
        roundNumber++; 
    }

这是您想要的吗?