Как добавить пробел в существующую строку? - PullRequest
0 голосов
/ 20 марта 2020

Я создал консольный проект, представляющий собой простую игру палача. Вот что я сделал до сих пор ...

static String answer;
static String display = "";
public static void main(String[] args) {

    System.out.println("please enter the word or phrase to be guessed");
    answer = input.next();
    System.out.print("Please make a guess: ");
    //loop to check each character in the string
    for(int i = 0; i < answer.length(); i++){
        if(answer.charAt(i) != ' ') {
            //adds an underscore to the String that will be printed
            display += "_";
        }//end if
        else {
            //adds a space to the String that will be printed
            display += " ";
        }//end else
    }//end for
    System.out.print(display);
}

Я пытаюсь go набрать некоторый текст, который пользователь вводит, и печатать подчеркивание в случае буквы и в противном случае сделать пробел.

  1. Пример ввода: Мне нравятся собаки
  2. Пример вывода: Пожалуйста, сделайте предположение: _ ____ ____

Я думаю, что собираюсь неправильно добавить пробел в строку и не могу найти никого с такой же проблемой.

То, что на самом деле происходит, показано ниже,

  1. Пример ввода: Мне нравятся собаки
  2. Пример вывода: Пожалуйста, сделайте предположение: _
  3. Пример ввода: это не работает
  4. Пример вывода: Пожалуйста, сделайте предположение: ____

Что он делает, так это печатает нужное количество подчеркиваний до тех пор, пока встречает первый пробел и затем останавливается.

1 Ответ

0 голосов
/ 20 марта 2020

input.next() читает только до первого пробела ''. Если вы хотите прочитать всю строку, вам нужно использовать input.nextLine()

...