我得为我的计算机科学类做的一个项目。 问题是:
图书馆的赞助人最多可借三本书。 的一位顾客,因此,有一个名字和多达三本书。 一本书有一个作者和标题。 设计并实现了两班,赞助人和书,以表示这些对象和以下行为:
- 客户端可以实例一本书标题和作者
- 客户可以检查,但不能修改书名或作者
- 客户可以要求wthere借入一个给定的书(由标题标识)赞助人。
- 客户端可以告诉顾客返回给定书(按标题标识)。
- 客户端可以告诉顾客借一个给定的书。
守护神类应该使用一个单独的实例变量,每本书(共三层)。 每一个变量是最初空。 当一本书是借来的,顾客寻找一个变量不为空。 如果没有找到这样的变量,该方法返回false。 如果找到一个空的变量,它被重置为新书和方法返回true。 类似的考虑适用于其他方法。 使用方法aString.equals(ASTRING)来比较两个字符串是否相等。 一定要包括适当的toString方法类和用测试仪测试程序他们。
这里是我的Client
类,它包含的main
方法: http://pastebin.com/JpxCT2F6
现在我的问题是,当我运行该程序,该程序不会等待用户输入。 以下是出现在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)
屁股你可以看到,控制台不等待用户输入后,“你想哪本书回来吗?” 相反,它需要一个空值。 而在后面的代码,我把“2”,这意味着没有返回本书,而是给了我一个无效的输入输出。