2017-02-21 2 views
0

У меня есть задание, которое просит нас ввести наш любимый ресторан и адрес. Я не могу получить адрес для печати прямо в той же строке.Адрес java ресторана неверно отображается

import java.util.Scanner; 

public class Restaurant { 
    public static void main(String[] args) { 
    Scanner user_input = new Scanner(System.in); 

String name; 
System.out.print("Enter your Favorite Restaurant: "); 
name = user_input.next(); 

String street; 
System.out.print("Enter the Street Address: "); 
street = user_input.next(); 

String city; 
System.out.print("Enter the City: "); 
city = user_input.next(); 

String state; 
System.out.print("Enter the State: "); 
state = user_input.next(); 

String zip; 
System.out.print("Enter the Zip Code: "); 
zip = user_input.next(); 


String restaurant = name + "\n" + city + ", " + state + ", " + " " " + zip;" 
+ ""; 


} 
} 

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

Enter your Favorite Restaurant: Uncle Bubs 
Enter the Street Address: Enter the City: 444 Spender St 
Enter the State: Enter the Zip Code: BUILD SUCCESSFUL (total time: 19  seconds) 
+0

дают пример ввода и вывода, поэтому мы можем видеть то, что вы имеете в виду – jgr208

+0

побег '' «как» \, то он может работать. И если вы хотите его на той же строке, то удалите '\ n'. Используйте 'System.out.println' – Nilesh

+0

@Nilesh: Я думаю, вы имеете в виду' \ '' – sinclair

ответ

2

Scanner.next используется для одного слова без пробелов.
Любые слова после этого будут сохранены для следующего вызова Scanner.next.
Вместо этого используйте Scanner.nextLine:

street = scanner.nextLine(); 
Смежные вопросы