проблема с возвратом в мою библиотечную систему

1

Я добавил функцию возврата в свою библиотечную систему, которая успешно работает. Проблема в том, что, когда вы идете вынимать книгу после ее возвращения, она не увенчалась успехом и заявляет, что "книга уже заимствована". Я пытаюсь решить эту проблему.

Это мой код для "книги заимствования" и "книги возврата" моей системы...

public String borrowBook(String titleBorrow) 
{
    int found = 0;
    String bookFound = "\n";
    for (Book b : collection) 
    {
        if (b.getTitle().equals(titleBorrow)) 
        {
            if (found == 0) 
            {
                found = 1;
            }
            if (!b.isBorrowed()) 
            {
                if (b.numcopies > 0)
                {found = 2;
                    b.numcopies -=1;
                    break;
                }else 
                {
                    found = 1;
                }

            }
        }
    }
    if (found == 0) {
        bookFound="Sorry, this book is not in our catalog.";
    } else if (found == 1) {
        bookFound="Sorry, this book is already borrowed.";
    } else if (found == 2) {
        bookFound="You successfully borrowed ";      
    }   

    return bookFound; 

}
public String returnBook(String returnedBook)
{
     int found = 0;
     boolean borrowed = false;
    String bookreturn = "\n";
    for (Book b : collection)
            {
        if (b.getTitle().equals(returnedBook)) 
        {
            if (found == 0) 
            {
                found = 1;
            }
            if (!b.isBorrowed()) 
            {
                b.borrowed=true;
                found = 2;
                b.numcopies +=1;
                break;
            }
        }
    }
    if (found == 0) {
        bookreturn="Sorry, this book is not in our catalog.";
    } else if (found == 1) {
        bookreturn="Please try again.";
    } else if (found == 2) {
        bookreturn="You successfully returned the book ";      
    }   

    return bookreturn; 

}
}
  • 0
    где взять код книги?
  • 0
    Извините, вот и все.
Теги:
return
system
bluej

1 ответ

1
Лучший ответ

Когда вы заимствуете книгу, вы должны установить флаг заимствования следующим образом:

 if (!b.isBorrowed()) {
    b.borrowed = true;
    ..

Когда вы возвращаете книгу, вы должны,

if (!b.isBorrowed()) {
     b.borrowed=false;//its returned now and can be borrowed

Вы можете расширить логику с количеством копий той же книги, что и в библиотеке.

  • 0
    Спасибо чувак! Оно работает.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню