我还是 Java 新手,目前使用 BlueJ。
第一个方法来自类库并且工作正常:
public TextBook borrowBook(LibraryCard card){
TextBook book = null;
if ( (nextBook < bookShelf.length) && !card.expired() ) {
book = bookShelf[ nextBook ];
bookShelf[ nextBook ] = null;
nextBook++;
card.swipe();
}
return book;
}
第二个来自 Student 类,我不知道如何将 book 从 null 更改为从书架上取下的书( TextBook 对象的数组):
public void study()
{
if( book == null ){
library.borrowBook(card);
return book;
}
else{
if( !book.isFinished() ){
book.readNextChapter();
}
else{
library.returnBook(book);
}
}
}
最佳答案
public void study()
{
if( book == null ){
library.borrowBook(card);
return book;
}
else{
if( !book.isFinished() ){
book.readNextChapter();
}
else{
library.returnBook(book);
}
}
}
首先,函数的返回类型是void
,因此您的函数不应该返回任何内容。目前您的函数中有一个返回簿
。
如果我错了,请纠正我。我认为这就是您想要实现的目标:
public void study() {
if(book == null) {
book = library.borrowBook(card);
} else {
if(!book.isFinished()) {
book.readNextChapter();
} else {
library.returnBook(book);
}
}
}
由于library.borrowBook(card);
返回借来的书,只需将其分配给book
即可。另外,始终编写干净的代码(正确的缩进、大括号的位置一致,以及删除不必要的空格等)。干净的代码就是好代码。我希望这有帮助!
关于java - 如何返回教科书,使其不被设置为空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59384881/