2014-01-21 2 views
2

У меня есть ряд вопросов, которые просят создать колоду флеш-карт. До сих пор я могу собирать вопросы и ответы, если вопросы не имеют пробелов. Если вопрос имеет пробелы, ответ пропускается, однако если ответ имеет пробелы, проблем нет. Вот отрывок из моего кода: Захват пространств со сканером?

 
    System.out.println("What is the question for number " + (cards + 1) + "?"); 
    question = in.next(); 
    System.out.println("What is the answer for number " + (cards + 1) + "?"); 
    answer = in.next(); 

А вот полученный выход с промежутками в вопросе и ответ:

What is the question for number 1? 
This is a question 
What is the answer for number 1? 
What is the question for number 2? 
x 
What is the answer for number 2? 
This is an answer 
What is the question for number 3? 
X 
+1

Используйте '' Line' после next'. –

ответ

3

Вместо того, чтобы использовать метод next(), используйте nextLine(), чтобы захватить всю строку вместо следующего содержания:

System.out.println("What is the question for number " + (cards + 1) + "?"); 
question = in.nextLine(); 
System.out.println("What is the answer for number " + (cards + 1) + "?"); 
answer = in.nextLine(); 

Помогло ли это?

1

следующий() считывает ввод только до места. Он не может читать слова, разделенные пробелом.

nextLine() считывает входной включая пространство между словами (он читает до конца строки)

Смежные вопросы