Программа, возвращающая предыдущую информацию вместо новой информации - PullRequest
0 голосов
/ 28 апреля 2018

Я реализую программу на основе меню, в которой пользователь может искать книги по различным параметрам, таким как: ISBN, название и т. Д. Проблема, с которой я сталкиваюсь, заключается в том, что, если пользователь выбирает один и тот же параметр дважды, он возвращает тот же продавец и цена от предыдущего запуска.

Например, если пользователь выбирает вариант 1 и вводит isbn 18937646282. Предполагается, что будет возвращено следующее: seller: adrake Price: 20.56. Затем пользователь снова выбирает вариант 1 и вводит isbn: 87473626262. Предполагается, что будет возвращено следующее: продавец: aharrison Price 10:20. Тем не менее, он возвращает то же самое, что и первый запуск: seller: adrake Price: 20.56.

Программа работает правильно, если я выйду из программы и перезапущу всю программу. Кроме того, я распечатал isbn, и он извлекает правильный isbn, автора, название для каждого прогона. Это просто не восстановить правильный продавец и цену. Любая помощь или понимание будет принята с благодарностью. Код ниже показывает option1 ():

List<BookSale> booklist = new ArrayList<>();
public void option1() throws SQLException, IOException
   {
      String sql;
      String sql_;
      String sql_info;
      int option;
      int i;
      int count = 0;


      // asks user to enter ISBN 
      System.out.print("Enter ISBN of the book you are searching for: ");
      isbn = stdin.next();

       //sql statement to select seller and price for user desired ISBN
       sql_ = "SELECT *" + " from BOOK_SALE " + "WHERE isbn = " +
            "'" + isbn + "'" + "and status =" + "'active'";

      // execute query
      result2 = select.executeQuery(sql_);

      // display Seller and Price of the desired ISBN, add book to ArrayList
      while(result2.next())
      {
         BookSale book = new BookSale(listing_no, seller,isbn, condition,price);
         book.setListingNumber(result2.getInt(1));
         book.setSeller(result2.getString(2));
         book.setISBN(result2.getString(3));
         book.setCondition(result2.getString(4));
         book.setPrice(result2.getDouble(5));
         booklist.add(book);
         count++;
      } // while

for (i = 0; i < count; i++) //0
         {
            // display number of the selections
            System.out.println(i + " " + booklist.get(i));
         }// for

Функция распечатать продавца и цену в классе:

@Override
      public String toString(){
         return ". Seller:" + seller + " Price: $" + price;
         }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...