首先,我很抱歉,如果我很难理解我,因为我不是母语为英语的人,我的观点可能很难理解。Java OOP如何获取变量的用户输入
我想制作一个非常基础的图书馆预订系统,但我有一个获取用户输入以调整书籍详细信息的问题。
我想要做的是从用户输入中获取书籍详细信息,但我不知道如何正确执行此操作。我尝试了用于改变状态的相同样式,但它似乎不起作用。
我也有一些困难,检查和更改书籍状态从可用到预订。
这是主程序:
public static void main(String[] args) {
System.out.println("Welcome to the basic library program! ");
System.out.println("Insert author, name, genre, ISNB, page number ");
// this one is wrong.
Book booking = new Book("Mary","Random Book","Horror",69,69);
System.out.println("Print book information? 1 = yes 2 = no?");
int answer = input.nextInt();
if (answer == 1) {
booking.printBook();
}
else {
}
System.out.println("Check books status? 1= yes 2= no");
int status = input.nextInt();
if (status == 1) {
booking.checkStatus();
}
else {
}
System.out.println("Change books status: 1 = Avaible 2 = Booked 3 = Lost ");
int availability = input.nextInt();
booking.changeAvailability(availability);
}
这是书类:
public class Book {
private String author;
private String name;
private String genre;
private int isbn;
private int pageNumber;
private int availability;
private String setAvailability;
public Book(String authorInput, String nameInput, String genreInput, int isbnInput, int pageInput) {
this.author = authorInput;
this.name = nameInput;
this.genre = genreInput;
this.isbn = isbnInput;
this.pageNumber = pageInput;
}
public void changeAvailability(int availability) {
if (availability == 1) {
setAvailability = "Avaible";
System.out.println("Avaible.");
}
else if (availability == 2) {
setAvailability = "Not avaible";
System.out.println("Not avaible.");
}
else if (availability == 3) {
setAvailability = "Lost";
System.out.println("Book missing.");
}
else {
System.out.println("Unknown input: Program closing..");
System.exit(1);
}
}
public String checkStatus() {
return this.setAvailability;
}
public void printBook() {
System.out.print("Author: " + this.author + "\nName: " + this.name + "\nGenre: " + this.genre + "\nISBN: " + this.isbn + "\nPages: " + this.pageNumber + "\nAvailability:" + " ");
}
}
你怎么可以将其更改为预订时,你甚至不具备这一条件(可用性== 3)在changeAvailibility方法。 –
真的不清楚你的问题是什么。您应该尝试编写代码来提问书的详细信息,然后将它们放在书上,然后告诉我们,您得到的是什么错误(构建错误或某些输入的错误输出)。 – hyde
问题是我想要从用户那里询问详细信息。目前的细节是以''预订=新书(“玛丽”,“随机书”,“恐怖”,69,69);''而不是阅读输入行,但我不知道如何正确地做那。 – TRMN