Czytanie z System.in

0

Cześć, mam taki kod:

	Book book = new Book();
	Author author = new Author();

	System.out.println("Adding a new book...");
	System.out.println("Name: ");
	book.setName(bReader.nextLine());

	System.out.println("Language: ");
	book.setLanguage(bReader.next());

	System.out.println("ISBN: ");
	book.setId(bReader.nextInt());

	System.out.println("Author first name: ");
	author.setFirstName(bReader.next());

	System.out.println("Author second name");
	author.setLastName(bReader.next());

Chodzi o to, że ten kod nie działa tak jak bym chciał. Od razu wyskakują dwa napisy: Name i Language. Dlaczego nie jest tak, że po napisie Name nie czeka aż wpisze coś i dopiero idzie dalej ?

0

Użyłem w pierwszym funkcji nextLine bo chcę całą linię, a nie tylko jeden wyraz

0

YYYy, pomyliłem się z tagami - używam klasy Scanner.

0

przed tym kodem nie sczytywałeś nic z System.in ?

0
	Book book = new Book();
        Author author = new Author();
 
        Scanner bReader = new Scanner(new BufferedReader(new InputStreamReader(System.in)));
        System.out.println("Adding a new book...");
        System.out.println("Name: ");
        book.setName(bReader.nextLine());
 
        System.out.println("Language: ");
        book.setLanguage(bReader.nextLine());
 
        System.out.println("ISBN: ");
        book.setId(Integer.parseInt(bReader.nextLine()));
 
        System.out.println("Author first name: ");
        author.setFirstName(bReader.nextLine());
 
        System.out.println("Author second name");
        author.setLastName(bReader.nextLine());

ja tak zawsze robie..

1 użytkowników online, w tym zalogowanych: 0, gości: 1