java图书管理系统问题

问题遇到的现象和发生背景

用Java编写图书管理系统,编写查找方法查找不到预先存放的书籍,及其他问题

用代码块功能插入代码,请勿粘贴截图
我想要达到的结果
import book.*;
import user.*;
import java.util.Scanner;
import java.util.ArrayList;


public class Main {
    public static void main(String[] args) {
        ArrayList array = new ArrayList();
        while (true) {
            System.out.println("---------------欢迎来到图书系统-------------");
            System.out.println("0 退出");
            System.out.println("1 借阅者系统");
            System.out.println("2 管理员系统");
            System.out.println("-------------------------------------------");

            Scanner scanner = new Scanner(System.in);
            String line = scanner.nextLine();
            switch (line) {
                case "0":
                    System.out.println("谢谢使用");
                    System.exit(0);
                    break;
                case "1":
                    System.out.println("借阅者系统");
                    inborrowers(array);
                    break;
                case "2":
                    System.out.println("管理员系统");
                    inadminstrators(array);
                    break;
            }
        }
    }


    private static void inadminstrators(ArrayList array) {
        ArrayList b = new ArrayList();
        while (true) {
            System.out.println("---------------欢迎来到管理员系统------------");
            System.out.println("0 退出");
            System.out.println("1 添加书籍");
            System.out.println("2 删除书籍");
            System.out.println("3 添加借阅者");
            System.out.println("4 删除借阅者");
            System.out.println("5 查询借阅者");
            System.out.println("6 修改信息");
            System.out.println("-------------------------------------------");
            Scanner scanner = new Scanner(System.in);
            String line = scanner.nextLine();
            switch (line) {
                case "0":
                    System.out.println("退出");
                    return;
                case "1":
                    System.out.println("添加书籍");
                    addBooks(array);
                    break;
                case "2":
                    System.out.println("删除书籍");
                    deleteBooks(array);
                    break;
                case "3":
                    System.out.println("添加借阅者");
                    addUsers(array);
                    break;
                case "4":
                    System.out.println("删除借阅者");
                    deleteUsers(array);
                    break;
                case "5":
                    System.out.println("查询借阅者");
                    findUsers(array);
                    break;
                case "6":
                    System.out.println("修改信息");
                    updateUsers(array);
                    break;
            }
        }
    }

    private static void updateUsers(ArrayList array)
    {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入学号");
        String number = sc.nextLine();

        int index = -1;
        Users users ;

        for (int i = 0; i < array.size(); i++) {
            users = array.get(i);
            if (users.getID().equals((number))) {
                boolean b = index == -1;
                break;
            }
        }
        if (index == -1) {
            System.out.println("该学号不存在,请重新输入!");
        } else {
            for (int j=0;j<array.size();j++){
                System.out.println("请输入新的借阅者姓名");
                String name=sc.nextLine();
                System.out.println("请输入借阅者的新地址");
                String adderss=sc.nextLine();

                Users users1=new Users();
                users1.setID(number);
                users1.setName(name);
                users1.setAddress(adderss);
                array.set(j,users1);

                System.out.println("修改信息成功");
                break;
            }
        }
    }


    private static void findUsers(ArrayList array) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入学号");
        String number = sc.nextLine();

        int index = -1;
        Users users = null;

        for (int i = 0; i < array.size(); i++) {
            users = array.get(i);
            if (users.getID().equals((number))) {
                boolean b = index == -1;
                break;
            }
        }
        if (index == -1) {
            System.out.println("该学号不存在,请重新输入!");
        } else {
            System.out.println("学号\t\t姓名\t\t电话\t\t地址");
            System.out.println(users.getID() + "\t\t" + users.getName() + "\t\t" + users.getTelephone() + "\t\t" + users.getAddress());
        }
    }

    private static void addBooks(ArrayList array) {
        ArrayList c = new ArrayList();
        Scanner sc = new Scanner(System.in);
        String name;
        String ISBN;
        String author;
        String time;
        System.out.println("请输入书籍名称: ");
        name = sc.nextLine();
        System.out.println("请输入书籍序列号: ");
        ISBN = sc.nextLine();
        System.out.println("请输入书籍作者: ");
        author = sc.nextLine();
        System.out.println("请输入书籍入库时间: ");
        time = sc.nextLine();

        Book readers = new Book();
        readers.setName(name);
        readers.setISBN(ISBN);
        readers.setWriter(author);
        readers.setTime(time);
        array.add(readers);
        System.out.println("添加书籍成功");

    }

    private static void deleteBooks(ArrayList array) {
        ArrayList c = new ArrayList();
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入要删除的书籍序列号: ");
        String ISBN = sc.nextLine();
        int index = -1;
        for (int i = 0; i < array.size(); i++) {
            Users readers =  array.get(i);
            if (((Book) readers).getISBN().equals(ISBN)) {
                index = i;
                break;
            }
        }
        if (index == -1) {
            System.out.println("该序列号不存在,请重新输入! ");
        } else {
            array.remove(index);
            System.out.println("删除书籍成功! ");
        }
    }


    private static void deleteUsers(ArrayList array) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入要删除的阅读者的学号: ");
        String number = sc.nextLine();
        int index = -1;
        for (int i = 0; i < array.size(); i++) {
            Users readers = array.get(i);
            if (readers.getNumber().equals(number)) {
                index = i;
                break;
            }
        }
        if (index == -1) {
            System.out.println("该学号不存在,请重新输入! ");
        } else {
            array.remove(index);
            System.out.println("删除该阅读者成功! ");
        }
    }

    public static void addUsers(ArrayList array) {
        Scanner sc = new Scanner(System.in);
        String name;
        String ID;
        String number;
        String address;
        String telephone;
        while (true) {
            System.out.println("请输入阅读者的学号: ");
            number = sc.nextLine();
            boolean flag = isnumber(array, number);
            if (flag) {
                System.out.println("您的学号已使用,请重新输入");
            } else {
                break;
            }
        }
        System.out.println("请输入借阅者的姓名: ");
        name = sc.nextLine();
        System.out.println("请输入借阅者的身份: ");
        ID = sc.nextLine();
        System.out.println("请输入借阅者的地址: ");
        address = sc.nextLine();
        System.out.println("请输入借阅者的学号: ");
        number = sc.nextLine();
        System.out.println("请输入借阅者的电话: ");
        telephone = sc.nextLine();

        Users readers = new Users();
        readers.setName(name);
        readers.setID(ID);
        readers.setAddress(address);
        readers.setTelephone(telephone);

        array.add(readers);
        System.out.println("添加借阅者成功");

    }

    private static boolean isnumber(ArrayList array, String number) {
        return false;
    }


    private static void inborrowers(ArrayList array) {
        ArrayList b = new ArrayList();
        while (true) {
            System.out.println("---------------欢迎来到借阅者系统------------");
            System.out.println("0 退出");
            System.out.println("1 登录");
            System.out.println("2 注册");
            System.out.println("-------------------------------------------");
            Scanner scanner = new Scanner(System.in);
            String line = scanner.nextLine();
            switch (line) {
                case "0":
                    System.out.println("谢谢使用");
                    return;
                case "1":
                    System.out.println("登录");
                    logborrowers(array);
                    break;
                case "2":
                    System.out.println("注册");
                    newborrowers(array);
                    break;
            }
        }
    }

    private static void newborrowers(ArrayList array) {
        //从键盘录入用户注册的账号名账号密码
        Scanner sc = new Scanner(System.in);
        // 为了在while外访问number
        String name;
        String number;
        while (true) {
            System.out.println("请输入学号");
            number = sc.nextLine();
            //创建对象,将键盘录入的数据赋值给对象中的成员变量
            Users reader = new Users();
            reader.setName(number);
            //将对象添加到集合中,并提示成功
            array.add(reader);
            System.out.println("注册成功");
            lborrowers(array);

            boolean flag = number(array, number);
            if (flag) {
                System.out.println("您输入的账号名已使用,请重新输入:");

            } else {
                break;
            }
        }
    }

    private static boolean number(ArrayList array, String number)//看是否存在
    {
        boolean flag = false;
        for (int i = 0; i < array.size(); i++) {
            Users reader = array.get(i);

            if (Users.getNumber().equals((number))) {
                flag = true;
                break;
            }
        }

        return flag;
    }

    private static void logborrowers(ArrayList array) {
        Scanner sc = new Scanner(System.in);
        String number;
        while (true) {
            System.out.println("请输入学号");
            number = sc.nextLine();
            boolean flag = number(array, number);
            if (flag){
                lborrowers(array);
            }else{
                System.out.println("学号输入有误,请重新输入:");
            }
        }
    }
    private static void lborrowers(ArrayList array){
        ArrayList b = new ArrayList();
        ArrayList c = new ArrayList();
        while (true) {
            System.out.println("0 退出");
            System.out.println("1 查找书籍");
            System.out.println("2 预约书籍");
            System.out.println("3 借阅书籍");
            System.out.println("4 归还书籍");
            System.out.println("-------------------------------------------");
            Scanner scanner = new Scanner(System.in);
            String line = scanner.nextLine();
            switch (line) {
                case "0":
                    System.out.println("退出");
                    inborrowers(array);
                case "1":
                    System.out.println("查找书籍");
                    findBooks(array);
                    break;
                case "2":
                    System.out.println("预约书籍");
                    appointmentBooks(array);
                    break;
                case "3":
                    System.out.println("借阅书籍");
                    borrowBooks(array);
                    break;
                case "4":
                    System.out.println("归还书籍");
                    returnBooks(array);
                    break;
            }
        }
    }

    private static void findBooks(ArrayList array) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入序列号");
        String ISBN = sc.nextLine();

        Book book = null;

        for (int i = 0; i < array.size(); i++) {
            book = (Book) array.get(i);
            if (book.getISBN().equals(ISBN)) {
                System.out.println(book.getISBN());
                return;
            }
        }
    }
            private static void appointmentBooks (ArrayList < Users > array)
            {

            }

            private static void borrowBooks (ArrayList < Users > array)
            {

            }

            private static void returnBooks (ArrayList < Users > array)
            {

            }

        }

package book;

import user.Users;

public class Book extends Users {
    private String name;//书名
    private String ISBN;
    private String author;//作者
    private String time;//入库时间

    public Book() {

    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getISBN() {
        return ISBN;
    }

    public void setISBN(String ISBN) {
        this.ISBN = ISBN;
    }

    public String getWriter() {
        return author;
    }

    public void setWriter(String author) {
        this.author = author;
    }

    public String getTime() {
        return time;
    }

    public void setTime(String time) {
        this.time = time;
    }

    public Book(String name, String ISBN, String author, String time) {
        this.name = name;
        this.ISBN = ISBN;
        this.author= author;
        this.time = time;
    }
}
类
package book;

public class Booklist extends Book
{
    Book books[]=new Book[100];
    public Booklist()
    {
        books[0]=new Book("西游记","1","吴承恩","11.30");
        books[1]=new Book("三国演义","2","罗贯中","11.30");
        books[2]=new Book("红楼梦","3","曹雪芹","11.30");
    }


    public Book[] getBooks() {
        return books;
    }

    public void setBooks(Book[] books) {
        this.books = books;
    }
}
package user;

public class Users
{
    private String name;//姓名
    private String ID;//ID号
    private String telephone;//电话
    private String address;//地址
    private static String number;//学号

    public Users(String name, String ID, String telephone, String address, String number) {
        this.name = name;
        this.ID = ID;
        this.telephone = telephone;
        this.address = address;
        this.number = number;
    }

    public Users() {

    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getID() {
        return ID;
    }

    public void setID(String ID) {
        this.ID = ID;
    }

    public String getTelephone() {
        return telephone;
    }

    public void setTelephone(String telephone) {
        this.telephone = telephone;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public static String getNumber() {
        return number;
    }

    public void setNumber(String number) {
        this.number = number;
    }
}


照着你的简单改了一下

import java.util.Scanner;
import java.util.ArrayList;

public class Test {

    static ArrayList<Users> array = new ArrayList<Users>();
    static ArrayList<Book> bookArrayList = new ArrayList<Book>();
    public static void main(String[] args) {
        bookArrayList.add(new Book("西游记", "1", "吴承恩", "11.30"));
        bookArrayList.add(new Book("三国演义", "2", "罗贯中", "11.30"));
        bookArrayList.add(new Book("红楼梦", "3", "曹雪芹", "11.30"));
        while (true)
        {
            System.out.println("---------------欢迎来到图书系统-------------");
            System.out.println("0 退出");
            System.out.println("1 借阅者系统");
            System.out.println("2 管理员系统");
            System.out.println("-------------------------------------------");
            Scanner scanner = new Scanner(System.in);
            String line = scanner.nextLine();
            switch (line)
            {
                case "0":
                    System.out.println("谢谢使用");
                    System.exit(0);
                    break;
                case "1":
                    System.out.println("借阅者系统");
                    inborrowers(array);
                    break;
                case "2":
                    System.out.println("管理员系统");
                    inadminstrators(array);
                    break;
            }
        }
    }

    private static void inadminstrators(ArrayList<Users> array) {
        ArrayList<Users> b = new ArrayList<Users>();
        while (true)
        {
            System.out.println("---------------欢迎来到管理员系统------------");
            System.out.println("0 退出");
            System.out.println("1 添加书籍");
            System.out.println("2 删除书籍");
            System.out.println("3 添加借阅者");
            System.out.println("4 删除借阅者");
            System.out.println("5 查询借阅者");
            System.out.println("6 修改信息");
            System.out.println("-------------------------------------------");
            Scanner scanner = new Scanner(System.in);
            String line = scanner.nextLine();
            switch (line)
            {
                case "0":
                    System.out.println("退出");
                    return;
                case "1":
                    System.out.println("添加书籍");
                    addBooks(array);
                    break;
                case "2":
                    System.out.println("删除书籍");
                    deleteBooks(array);
                    break;
                case "3":
                    System.out.println("添加借阅者");
                    addUsers(array);
                    break;
                case "4":
                    System.out.println("删除借阅者");
                    deleteUsers(array);
                    break;
                case "5":
                    System.out.println("查询借阅者");
                    findUsers(array);
                    break;
                case "6":
                    System.out.println("修改信息");
                    updateUsers(array);
                    break;
            }
        }
    }

    private static void updateUsers(ArrayList<Users> array) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入学号");
        String number = sc.nextLine();
        int index = -1;
        Users users;
        for (int i = 0; i < array.size(); i++)
        {
            users = array.get(i);
            if (users.getID().equals((number)))
            {
                boolean b = index == -1;
                break;
            }
        }
        if (index == -1)
        {
            System.out.println("该学号不存在,请重新输入!");
        } else
        {
            for (int j = 0; j < array.size(); j++)
            {
                System.out.println("请输入新的借阅者姓名");
                String name = sc.nextLine();
                System.out.println("请输入借阅者的新地址");
                String adderss = sc.nextLine();
                Users users1 = new Users();
                users1.setID(number);
                users1.setName(name);
                users1.setAddress(adderss);
                array.set(j, users1);
                System.out.println("修改信息成功");
                break;
            }
        }
    }

    private static void findUsers(ArrayList<Users> array) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入学号");
        String number = sc.nextLine();
        int index = -1;
        Users users = null;
        for (int i = 0; i < array.size(); i++)
        {
            users = array.get(i);
            if (users.getID().equals((number)))
            {
                boolean b = index == -1;
                break;
            }
        }
        if (index == -1)
        {
            System.out.println("该学号不存在,请重新输入!");
        } else
        {
            System.out.println("学号\t\t姓名\t\t电话\t\t地址");
            System.out.println(users.getID() + "\t\t" + users.getName() + "\t\t" + users.getTelephone() + "\t\t" + users.getAddress());
        }
    }

    private static void addBooks(ArrayList<Users> array) {
        ArrayList<Book> c = new ArrayList<Book>();
        Scanner sc = new Scanner(System.in);
        String name;
        String ISBN;
        String author;
        String time;
        System.out.println("请输入书籍名称: ");
        name = sc.nextLine();
        System.out.println("请输入书籍序列号: ");
        ISBN = sc.nextLine();
        System.out.println("请输入书籍作者: ");
        author = sc.nextLine();
        System.out.println("请输入书籍入库时间: ");
        time = sc.nextLine();
        Book readers = new Book();
        readers.setName(name);
        readers.setISBN(ISBN);
        readers.setWriter(author);
        readers.setTime(time);
        array.add(readers);
        System.out.println("添加书籍成功");
    }

    private static void deleteBooks(ArrayList<Users> array) {
        ArrayList<Book> c = new ArrayList<Book>();
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入要删除的书籍序列号: ");
        String ISBN = sc.nextLine();
        int index = -1;
        for (int i = 0; i < array.size(); i++)
        {
            Users readers = array.get(i);
            if (((Book) readers).getISBN().equals(ISBN))
            {
                index = i;
                break;
            }
        }
        if (index == -1)
        {
            System.out.println("该序列号不存在,请重新输入! ");
        } else
        {
            array.remove(index);
            System.out.println("删除书籍成功! ");
        }
    }

    private static void deleteUsers(ArrayList<Users> array) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入要删除的阅读者的学号: ");
        String number = sc.nextLine();
        int index = -1;
        for (int i = 0; i < array.size(); i++)
        {
            Users readers = array.get(i);
            if (readers.getNumber().equals(number))
            {
                index = i;
                break;
            }
        }
        if (index == -1)
        {
            System.out.println("该学号不存在,请重新输入! ");
        } else
        {
            array.remove(index);
            System.out.println("删除该阅读者成功! ");
        }
    }

    public static void addUsers(ArrayList<Users> array) {
        Scanner sc = new Scanner(System.in);
        String name;
        String ID;
        String number;
        String address;
        String telephone;
        while (true)
        {
            System.out.println("请输入阅读者的学号: ");
            number = sc.nextLine();
            boolean flag = isnumber(array, number);
            if (flag)
            {
                System.out.println("您的学号已使用,请重新输入");
            } else
            {
                break;
            }
        }
        System.out.println("请输入借阅者的姓名: ");
        name = sc.nextLine();
        System.out.println("请输入借阅者的身份: ");
        ID = sc.nextLine();
        System.out.println("请输入借阅者的地址: ");
        address = sc.nextLine();
        System.out.println("请输入借阅者的学号: ");
        number = sc.nextLine();
        System.out.println("请输入借阅者的电话: ");
        telephone = sc.nextLine();
        Users readers = new Users();
        readers.setName(name);
        readers.setID(ID);
        readers.setAddress(address);
        readers.setTelephone(telephone);
        array.add(readers);
        System.out.println("添加借阅者成功");
    }

    private static boolean isnumber(ArrayList<Users> array, String number) {
        return false;
    }

    private static void inborrowers(ArrayList<Users> array) {
        while (true)
        {
            System.out.println("---------------欢迎来到借阅者系统------------");
            System.out.println("0 退出");
            System.out.println("1 登录");
            System.out.println("2 注册");
            System.out.println("-------------------------------------------");
            Scanner scanner = new Scanner(System.in);
            String line = scanner.nextLine();
            switch (line)
            {
                case "0":
                    System.out.println("谢谢使用");
                    return;
                case "1":
                    System.out.println("登录");
                    logborrowers(array);
                    break;
                case "2":
                    System.out.println("注册");
                    newborrowers(array);
                    break;
            }
        }
    }

    private static void newborrowers(ArrayList<Users> array) {
        //从键盘录入用户注册的账号名账号密码
        Scanner sc = new Scanner(System.in);
        // 为了在while外访问number
        String name;
        String number;
        while (true)
        {
            System.out.println("请输入学号");
            number = sc.nextLine();
            //创建对象,将键盘录入的数据赋值给对象中的成员变量
            Users reader = new Users();
            reader.setName(number);
            //将对象添加到集合中,并提示成功
            array.add(reader);
            System.out.println("注册成功");
            lborrowers(array);
            boolean flag = number(array, number);
            if (flag)
            {
                System.out.println("您输入的账号名已使用,请重新输入:");
            } else
            {
                break;
            }
        }
    }

    private static boolean number(ArrayList<Users> array, String number)//看是否存在
    {
        boolean flag = false;
        for (int i = 0; i < array.size(); i++)
        {
            Users reader = array.get(i);
            if (Users.getNumber().equals((number)))
            {
                flag = true;
                break;
            }
        }
        return flag;
    }

    private static void logborrowers(ArrayList<Users> array) {
        Scanner sc = new Scanner(System.in);
        String number;
        while (true)
        {
            System.out.println("请输入学号");
            number = sc.nextLine();
            boolean flag = number(array, number);
            if (flag)
            {
                lborrowers(array);
            } else
            {
                System.out.println("学号输入有误,请重新输入:");
            }
        }
    }

    private static void lborrowers(ArrayList<Users> array) {
        while (true)
        {
            System.out.println("0 退出");
            System.out.println("1 查找书籍");
            System.out.println("2 预约书籍");
            System.out.println("3 借阅书籍");
            System.out.println("4 归还书籍");
            System.out.println("-------------------------------------------");
            Scanner scanner = new Scanner(System.in);
            String line = scanner.nextLine();
            switch (line)
            {
                case "0":
                    System.out.println("退出");
                    inborrowers(array);
                case "1":
                    System.out.println("查找书籍");
                    findBooks(array);
                    break;
                case "2":
                    System.out.println("预约书籍");
                    appointmentBooks(array);
                    break;
                case "3":
                    System.out.println("借阅书籍");
                    borrowBooks(array);
                    break;
                case "4":
                    System.out.println("归还书籍");
                    returnBooks(array);
                    break;
            }
        }
    }

    private static void findBooks(ArrayList<Users> array) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入序列号");
        String ISBN = sc.nextLine();
        Book book = null;
        for (int i = 0; i < bookArrayList.size(); i++)
        {
            book = bookArrayList.get(i);
            if (book.getISBN().equals(ISBN))
            {
                System.out.println(book.toString());
                return;
            }
        }
    }

    private static void appointmentBooks(ArrayList<Users> array) {
    }

    private static void borrowBooks(ArrayList<Users> array) {
    }

    private static void returnBooks(ArrayList<Users> array) {
    }
}

class Book extends Users {
    private String name;//书名
    private String ISBN;
    private String author;//作者
    private String time;//入库时间

    public Book() {
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getISBN() {
        return ISBN;
    }

    public void setISBN(String ISBN) {
        this.ISBN = ISBN;
    }

    public String getWriter() {
        return author;
    }

    public void setWriter(String author) {
        this.author = author;
    }

    public String getTime() {
        return time;
    }

    public void setTime(String time) {
        this.time = time;
    }

    public Book(String name, String ISBN, String author, String time) {
        this.name = name;
        this.ISBN = ISBN;
        this.author = author;
        this.time = time;
    }

    @Override
    public String toString() {
        return "Book{" +
                "name='" + name + '\'' +
                ", ISBN='" + ISBN + '\'' +
                ", author='" + author + '\'' +
                ", time='" + time + '\'' +
                '}';
    }
}



class Users {
    private String name;//姓名
    private String ID;//ID号
    private String telephone;//电话
    private String address;//地址
    private static String number;//学号

    public Users(String name, String ID, String telephone, String address, String number) {
        this.name = name;
        this.ID = ID;
        this.telephone = telephone;
        this.address = address;
        this.number = number;
    }

    public Users() {
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getID() {
        return ID;
    }

    public void setID(String ID) {
        this.ID = ID;
    }

    public String getTelephone() {
        return telephone;
    }

    public void setTelephone(String telephone) {
        this.telephone = telephone;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public static String getNumber() {
        return number;
    }

    public void setNumber(String number) {
        this.number = number;
    }
}


代码有点多啊,看起来不是很方便,我这边提点查询问题的方法:

img


首先是这里,您可以将您的书籍列表打印出来看看是什么结果,以及用户输入的序列号是什么(推荐debug),应该就可以看出问题,单从代码看出来还是有点难度,希望对您有所帮助!

ArrayList c = new ArrayList();
这个要弄成全局的,可以放在main方法上面