Código não espera pela entrada do usuário?

Eu tenho que fazer um projeto para minha aula de Ciência da Computação. O problema é:

Patronos de uma biblioteca podem emprestar até três livros. Um patrono, portanto, tem um nome e até três livros. Um livro tem um autor e um título. Projete e implemente duas classes, Patron e Book, para representar esses objetos e o seguinte comportamento:

O cliente pode instanciar um livro com um título e autorO cliente pode examinar, mas não modificar o título ou autor de um livroO cliente pode perguntar a um cliente onde ele emprestou um determinado livro (identificado por título).O cliente pode dizer ao usuário para retornar um determinado livro (identificado pelo título).O cliente pode dizer a um usuário para emprestar um determinado livro.

A classe Patron deve usar uma variável de instância separada para cada livro (um total de três). Cada uma dessas variáveis ​​é inicialmente nula. Quando um livro é emprestado, o usuário procura uma variável que não seja nula. Se nenhuma variável for encontrada, o método retornará false. Se uma variável nula for encontrada, ela será redefinida para o novo livro e o método retornará verdadeiro. Considerações semelhantes se aplicam a outros métodos. Use o método aString.equals (aString) para comparar duas strings por igualdade. Certifique-se de incluir métodos toString apropriados para suas classes e teste-os com um programa testador.

Aqui está o meuClient classe, que contém omain método:http://pastebin.com/JpxCT2F6

Agora, meu problema é que, quando executo o programa, o programa não aguarda a entrada do usuário. Aqui está o que surge no console do Eclipse:

Please enter title of book 1: 
s
Please enter author of book 1: 
e
Please enter title of book 2: 
f
Please enter author of book 2:
t
Please enter title of book 3: 
g
Please enter author of book 3:
d
Which book would you like to check for?
s
The patron has taken out the book s
Would you like to return a book? (1 yes or 2 no)
1
Which book would you like to return?
Sorry, could not find the book 
Would you like to take out a book? (1 yes or 2 no)
2
Invalid option
Which book would you like to check for?
The patron does not have  taken out
Would you like to return a book? (1 yes or 2 no)

Bunda que você pode ver, o console não espera a entrada do usuário depois de "Qual livro você gostaria de voltar?" Em vez disso, leva um valor em branco. E mais tarde no código, eu coloquei em "2", o que significa retornar nenhum livro, mas em vez disso me dá uma saída de entrada inválida.

questionAnswers(3)

yourAnswerToTheQuestion