图书管理系统(I/O流)

目录

目标要求

 思路

具体代码

book类

borrowbook类

manger类

reader类

bookfunc类

borrowfunc类

readerfunc类

booksystem类

borrowsystem类

readersystem类

Main类

总结


目标要求

 思路

核心思路主要是实现图书信息以及读者信息的增、删、查、改,用Arraylist来存储图书、读者、借阅信息,我选择用序列化和反序列化来读和写文件,把序列化和反序列写入方法里面,方便调用。

下面是我的分类

具体代码

book类

package library;

import java.io.Serializable;
import java.util.Scanner;

public class book implements Serializable,Comparable<book>//可序列化
{//书号,书名,作者,出版社,出版日期,数量,价格
  private String isbn;
  private String name;
  private String author;
  private String publish;
  private String publishdate;
  private int numbers;
  private double money;

    public book(String isbn, String name, String author, String publish, String publishdate, int numbers, double money) {
        this.isbn = isbn;
        this.name = name;
        this.author = author;
        this.publish = publish;
        this.publishdate = publishdate;
        this.numbers = numbers;
        this.money = money;
    }
//所有属性的set,get方法

    public String getIsbn() {
        return isbn;
    }

    public String getName() {
        return name;
    }

    public String getAuthor() {
        return author;
    }

    public String getPublish() {
        return publish;
    }

    public String getPublishdate() {
        return publishdate;
    }

    public int getNumbers() {
        return numbers;
    }

    public double getMoney() {
        return money;
    }

    public void setIsbn(String isbn) {
        this.isbn = isbn;
    }

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

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

    public void setPublish(String publish) {
        this.publish = publish;
    }

    public void setPublishdate(String publishdate) {
        this.publishdate = publishdate;
    }

    public void setNumbers(int numbers) {
        this.numbers = numbers;
    }

    public void setMoney(double money) {
        this.money = money;
    }

    @Override
   public int compareTo(book o) //为了后面的排序
{
        return this.isbn.compareTo(o.isbn);
    }



}

borrowbook类

package library;

import java.io.Serializable;

public class borrowbook implements Serializable {
//学号、姓名、书号、书名、借阅日期、应归还日期、归还日期
    private int id;
    private String rname;
    private String isbn;
    private String bname;
    private String borrowdate;
    private String shoulddate;
    private String returndate;

    public borrowbook(int id, String rname, String isbn, String bname, String borrowdate, String shoulddate,String returndate) {
        this.id = id;
        this.rname = rname;
        this.isbn = isbn;
        this.bname = bname;
        this.borrowdate = borrowdate;
        this.shoulddate = shoulddate;
        this.returndate=returndate;

    }

    public int getId() {
        return id;
    }

    public String getRname() {
        return rname;
    }

    public String getIsbn() {
        return isbn;
    }

    public String getBname() {
        return bname;
    }

    public String getBorrowdate() {
        return borrowdate;
    }

    public String getShoulddate() {
        return shoulddate;
    }

    public String getReturndate() {
        return returndate;
    }

    public void setId(int id) {
        this.id = id;
    }

    public void setRname(String rname) {
        this.rname = rname;
    }

    public void setIsbn(String isbn) {
        this.isbn = isbn;
    }

    public void setBname(String bname) {
        this.bname = bname;
    }

    public void setBorrowdate(String borrowdate) {
        this.borrowdate = borrowdate;
    }

    public void setShoulddate(String shoulddate) {
        this.shoulddate = shoulddate;
    }

    public void setReturndate(String returndate) {
        this.returndate = returndate;
    }
}

manger类

package library;

import system.booksystem;
import system.borrowsystem;
import system.readersystem;

import javax.annotation.processing.Filer;
import java.io.*;
import java.util.Scanner;

public class manger implements Serializable{
private int id;
private int key;

    public manger(int id, int key) {
        this.id = id;
        this.key = key;
    }
    public manger(){}

    public int getId() {
        return id;
    }

    public int getKey() {
        return key;
    }

    public void setId(int id) {
        this.id = id;
    }

    public void setKey(int key) {
        this.key = key;
    }
    public void signin() {
        System.out.println("请输入账号和密码");
        Scanner cin=new Scanner(System.in);


       String n= cin.nextLine();
       String m=cin.next();
      try {
          File f = new File("D:\\javaidea\\javaa\\src\\library/manger.txt");
          FileReader fr = new FileReader(f);
          BufferedReader br = new BufferedReader(fr);
          String str = br.readLine();
          String str1 = br.readLine();
          br.close();
          fr.close();

          if (n.equals(str) && m.equals(str1)) {
              System.out.println("登录成功");
              mr();
          } else {
              System.out.println("账号或密码错误,请重新输入");
              signin();
          }
      }

      catch (IOException e)
      {
          e.printStackTrace();
      }


    }
    public void menu()
    {
        System.out.println("------欢迎来到管理员页面------");
        System.out.println("------0、退出页面------");
        System.out.println("------1、管理图书------");
        System.out.println("------2、管理读者------");
        System.out.println("------3、管理借阅信息------");
    }
    public void mr()  {

        while(true)
        {
            menu();
            System.out.println("------请输入你的选择------");
            Scanner cin=new Scanner(System.in);
            int choose=cin.nextInt();
            booksystem book=new booksystem();
            borrowsystem borrow=new borrowsystem();
            readersystem reader=new readersystem();
            switch (choose)
            {
                case 0:return;
                case 1:
                    book.bs();
                    break;
                case 2:
                    reader.rs();
                    break;
                case 3:
                    borrow.bs();
                    break;

            }
        }
    }
}

reader类

package library;

import java.io.Serializable;

public class reader implements Serializable,Comparable<reader> {
    private int id;
    private String name;
    private String college;
    private String profession;

    public reader(int id, String name, String college, String profession) {
        this.id = id;
        this.name = name;
        this.college = college;
        this.profession = profession;
    }

    public int getId() {
        return id;
    }

    public String getName() {
        return name;
    }

    public String getCollege() {
        return college;
    }

    public String getProfession() {
        return profession;
    }

    public void setId(int id) {
        this.id = id;
    }

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

    public void setCollege(String college) {
        this.college = college;
    }

    public void setProfession(String profession) {
        this.profession = profession;
    }


    @Override
    public int compareTo(reader o) {
        return this.id-o.id;
    }
}

bookfunc类

package function;

import library.book;

import java.io.*;
import java.util.ArrayList;
import java.util.*;

public class bookfunc implements Serializable {
   static Scanner cin=new Scanner(System.in);


    public static void writebook(ArrayList<book> b) {
      // ObjectOutputStream oos=null;
        try{
            FileOutputStream f=new FileOutputStream("book.txt");
          ObjectOutputStream  oos=new ObjectOutputStream(f);
            oos.writeObject(b);
            oos.close();
        }catch (FileNotFoundException e){

        }catch (IOException e){
            e.printStackTrace();
        }
       /* finally {
            try{
                if(oos!=null){
                    oos.close();
                }
            }catch (IOException e){
                e.printStackTrace();
            }
        }*/


    }
    public static ArrayList<book> readbook()  {
        ArrayList<book> b1=new ArrayList<>();
        try{
            FileInputStream f=new FileInputStream("book.txt");
           ObjectInputStream ois=new ObjectInputStream(f);
         b1=(ArrayList<book>)ois.readObject();
            ois .close();
        }catch (Exception e) {
            e.printStackTrace();
        }

        return b1;


    }
    public static void addbook() //添加
    {

        ArrayList<book> b=readbook();
        System.out.println("请输入要添加图书的编号");
        String isbn=cin.next();
        System.out.println("请输入要添加的图书名称");
        String name=cin.next();
        System.out.println("请输入要添加图书的作者");
        String author=cin.next();
        System.out.println("请输入要添加图书的出版社");
        String publish=cin.next();
        System.out.println("请输入要添加图书的出版日期");
        String publishdate=cin.next();
        System.out.println("请输入要添加图书的数量");
        int nums=cin.nextInt();
        System.out.println("请输入要添加图书的价格");
        double money=cin.nextDouble();
        boolean blog=false;
        for(int i=0;i<b.size();i++)
        {
            if(b.get(i).getIsbn().equals(isbn))
            {
                System.out.println("不好意思,该书已经存在,请重新输入");
                blog=true;
                addbook();
            }
        }
        if(blog==false){
        book books=new book(isbn,name,author,publish,publishdate,nums,money);
        b.add(books);
        writebook(b);
        System.out.println("添加图书成功");}

    }
    public static void findbook() //查询
    {

        ArrayList<book> b=readbook();
        while(true) {
            System.out.println("欢迎来到图书查询系统");
            System.out.println("请输入你的选择");
            System.out.println("0、退出查询");
            System.out.println("1、通过书号查找");
            System.out.println("2、通过书名查找");
            System.out.println("3、通过作者查找");
            System.out.println("请输入你的选择");
            int choose=cin.nextInt();
            switch (choose) {
                case 0:
                    return;
                case 1:
                    System.out.println("请输入要查找的书号");
                    boolean flag=false;
                    String isbn = cin.next();
                    for (int i = 0; i < b.size(); i++) {
                        if (b.get(i).getNumbers() != 0 &&b.get(i).getIsbn().equals(isbn)) {
                            System.out.println(b.get(i).getIsbn() + " " + b.get(i).getName() + " " + b.get(i).getAuthor() + " " + b.get(i).getNumbers());
                                            flag=true;

                        }
                    }
                    if(flag==false)
                    {
                        System.out.println("不好意思,没有这本书");
                    }
                    break;
                case 2:
                    System.out.println("请输入要查找的书名");
                    boolean flag1=false;
                    String name= cin.next();
                    for (int i = 0; i < b.size(); i++) {
                        if (b.get(i).getNumbers() != 0 &&b.get(i).getName().equals(name)) {
                            System.out.println(b.get(i).getIsbn() + " " + b.get(i).getName() + " " + b.get(i).getAuthor() + " " + b.get(i).getNumbers());
                            flag1=true;

                        }
                    }
                    if(flag1==false)
                    {
                        System.out.println("不好意思,没有这本书");
                    }
                    break;
                case 3:
                    System.out.println("请输入要查找的作者");
                    boolean flag2=false;
                    String author=cin.next();
                    for(int i=0;i<b.size();i++)
                    {
                        if(b.get(i).getNumbers()!=0 && b.get(i).getAuthor().equals(author))
                        {
                            System.out.println(b.get(i).getIsbn() + " " + b.get(i).getName() + " " + b.get(i).getAuthor() + " " + b.get(i).getNumbers());
                            flag2=true;

                        }

                    }
                    if(flag2==false)
                    {
                        System.out.println("不好意思,没有这本书");
                    }
                    break;
            }
        }
    }
    public static void printbook()//打印
    {
        ArrayList<book> b=readbook();

        if(b.size()!=0)
        {
            for(int i=0;i<b.size();i++)
            {
                Collections.sort(b);

           System.out.println(b.get(i).getIsbn() + " " + b.get(i).getName() + " " + b.get(i).getAuthor() + " " + b.get(i).getNumbers());

            }
        }
        else {
            System.out.println("不好意思,还未添加图书");
        }


    }
    public static void deletebook()//删除
    {
        ArrayList<book> b=readbook();
        System.out.println("请输入你要删除的书号");
        String isbn=cin.next();
        boolean flag3=false;
        for(int i=0;i<b.size();i++)
        {
            if(b.get(i).getIsbn().equals(isbn))
            {
                flag3=true;
                b.remove(i);

                writebook(b);
                System.out.println("删除成功");
            }
        }
        if(flag3==false)
        {
            System.out.println("不好意思,没有这本书");
        }
    }
    public static void changebook()
    {
        ArrayList<book> b=readbook();
        System.out.println("请输入想修改图书的书号");
        String isbn=cin.next();
        boolean flag4=false;

        for (int i = 0; i < b.size(); i++) {
            if (b.get(i).getNumbers() != 0 &&b.get(i).getIsbn().equals(isbn)) {
                System.out.println("请输入修改图书的编号");
                String isbn2=cin.next();
                System.out.println("请输入修改图书名称");
                String name=cin.next();
                System.out.println("请输入修改图书的作者");
                String author=cin.next();
                System.out.println("请输入修改图书的出版社");
                String publish=cin.next();
                System.out.println("请输入修改图书的出版日期");
                String publishdate=cin.next();
                System.out.println("请输入修改图书的数量");
                int nums=cin.nextInt();
                System.out.println("请输入修改图书的价格");
                double money=cin.nextDouble();
                book b1=new book(isbn2,name,author,publish,publishdate,nums,money);
                b.set(i,b1);
                writebook(b);
                flag4=true;
                System.out.println("修改图书成功");

            }
        }
        if(flag4==false)
        {
            System.out.println("不好意思,没有这本书");
        }

    }
}

borrowfunc类

package function;

import library.book;

import java.io.*;
import java.util.ArrayList;
import java.util.*;

public class bookfunc implements Serializable {
   static Scanner cin=new Scanner(System.in);


    public static void writebook(ArrayList<book> b) {
      // ObjectOutputStream oos=null;
        try{
            FileOutputStream f=new FileOutputStream("book.txt");
          ObjectOutputStream  oos=new ObjectOutputStream(f);
            oos.writeObject(b);
            oos.close();
        }catch (FileNotFoundException e){

        }catch (IOException e){
            e.printStackTrace();
        }
       /* finally {
            try{
                if(oos!=null){
                    oos.close();
                }
            }catch (IOException e){
                e.printStackTrace();
            }
        }*/


    }
    public static ArrayList<book> readbook()  {
        ArrayList<book> b1=new ArrayList<>();
        try{
            FileInputStream f=new FileInputStream("book.txt");
           ObjectInputStream ois=new ObjectInputStream(f);
         b1=(ArrayList<book>)ois.readObject();
            ois .close();
        }catch (Exception e) {
            e.printStackTrace();
        }

        return b1;


    }
    public static void addbook() //添加
    {

        ArrayList<book> b=readbook();
        System.out.println("请输入要添加图书的编号");
        String isbn=cin.next();
        System.out.println("请输入要添加的图书名称");
        String name=cin.next();
        System.out.println("请输入要添加图书的作者");
        String author=cin.next();
        System.out.println("请输入要添加图书的出版社");
        String publish=cin.next();
        System.out.println("请输入要添加图书的出版日期");
        String publishdate=cin.next();
        System.out.println("请输入要添加图书的数量");
        int nums=cin.nextInt();
        System.out.println("请输入要添加图书的价格");
        double money=cin.nextDouble();
        boolean blog=false;
        for(int i=0;i<b.size();i++)
        {
            if(b.get(i).getIsbn().equals(isbn))
            {
                System.out.println("不好意思,该书已经存在,请重新输入");
                blog=true;
                addbook();
            }
        }
        if(blog==false){
        book books=new book(isbn,name,author,publish,publishdate,nums,money);
        b.add(books);
        writebook(b);
        System.out.println("添加图书成功");}

    }
    public static void findbook() //查询
    {

        ArrayList<book> b=readbook();
        while(true) {
            System.out.println("欢迎来到图书查询系统");
            System.out.println("请输入你的选择");
            System.out.println("0、退出查询");
            System.out.println("1、通过书号查找");
            System.out.println("2、通过书名查找");
            System.out.println("3、通过作者查找");
            System.out.println("请输入你的选择");
            int choose=cin.nextInt();
            switch (choose) {
                case 0:
                    return;
                case 1:
                    System.out.println("请输入要查找的书号");
                    boolean flag=false;
                    String isbn = cin.next();
                    for (int i = 0; i < b.size(); i++) {
                        if (b.get(i).getNumbers() != 0 &&b.get(i).getIsbn().equals(isbn)) {
                            System.out.println(b.get(i).getIsbn() + " " + b.get(i).getName() + " " + b.get(i).getAuthor() + " " + b.get(i).getNumbers());
                                            flag=true;

                        }
                    }
                    if(flag==false)
                    {
                        System.out.println("不好意思,没有这本书");
                    }
                    break;
                case 2:
                    System.out.println("请输入要查找的书名");
                    boolean flag1=false;
                    String name= cin.next();
                    for (int i = 0; i < b.size(); i++) {
                        if (b.get(i).getNumbers() != 0 &&b.get(i).getName().equals(name)) {
                            System.out.println(b.get(i).getIsbn() + " " + b.get(i).getName() + " " + b.get(i).getAuthor() + " " + b.get(i).getNumbers());
                            flag1=true;

                        }
                    }
                    if(flag1==false)
                    {
                        System.out.println("不好意思,没有这本书");
                    }
                    break;
                case 3:
                    System.out.println("请输入要查找的作者");
                    boolean flag2=false;
                    String author=cin.next();
                    for(int i=0;i<b.size();i++)
                    {
                        if(b.get(i).getNumbers()!=0 && b.get(i).getAuthor().equals(author))
                        {
                            System.out.println(b.get(i).getIsbn() + " " + b.get(i).getName() + " " + b.get(i).getAuthor() + " " + b.get(i).getNumbers());
                            flag2=true;

                        }

                    }
                    if(flag2==false)
                    {
                        System.out.println("不好意思,没有这本书");
                    }
                    break;
            }
        }
    }
    public static void printbook()//打印
    {
        ArrayList<book> b=readbook();

        if(b.size()!=0)
        {
            for(int i=0;i<b.size();i++)
            {
                Collections.sort(b);

           System.out.println(b.get(i).getIsbn() + " " + b.get(i).getName() + " " + b.get(i).getAuthor() + " " + b.get(i).getNumbers());

            }
        }
        else {
            System.out.println("不好意思,还未添加图书");
        }


    }
    public static void deletebook()//删除
    {
        ArrayList<book> b=readbook();
        System.out.println("请输入你要删除的书号");
        String isbn=cin.next();
        boolean flag3=false;
        for(int i=0;i<b.size();i++)
        {
            if(b.get(i).getIsbn().equals(isbn))
            {
                flag3=true;
                b.remove(i);

                writebook(b);
                System.out.println("删除成功");
            }
        }
        if(flag3==false)
        {
            System.out.println("不好意思,没有这本书");
        }
    }
    public static void changebook()
    {
        ArrayList<book> b=readbook();
        System.out.println("请输入想修改图书的书号");
        String isbn=cin.next();
        boolean flag4=false;

        for (int i = 0; i < b.size(); i++) {
            if (b.get(i).getNumbers() != 0 &&b.get(i).getIsbn().equals(isbn)) {
                System.out.println("请输入修改图书的编号");
                String isbn2=cin.next();
                System.out.println("请输入修改图书名称");
                String name=cin.next();
                System.out.println("请输入修改图书的作者");
                String author=cin.next();
                System.out.println("请输入修改图书的出版社");
                String publish=cin.next();
                System.out.println("请输入修改图书的出版日期");
                String publishdate=cin.next();
                System.out.println("请输入修改图书的数量");
                int nums=cin.nextInt();
                System.out.println("请输入修改图书的价格");
                double money=cin.nextDouble();
                book b1=new book(isbn2,name,author,publish,publishdate,nums,money);
                b.set(i,b1);
                writebook(b);
                flag4=true;
                System.out.println("修改图书成功");

            }
        }
        if(flag4==false)
        {
            System.out.println("不好意思,没有这本书");
        }

    }
}

readerfunc类

package function;

import library.book;
import library.*;
import java.io.*;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.Scanner;

public class readerfunc {
    static Scanner cin=new Scanner(System.in);
    public static void writereader(ArrayList<reader> r) {

        try{
            FileOutputStream f=new FileOutputStream("D:\\javaidea\\javaa\\src\\function/reader.txt");
            ObjectOutputStream oos=new ObjectOutputStream(f);
            oos.writeObject(r);
            oos.close();
        }catch (FileNotFoundException e){

        }catch (IOException e){
            e.printStackTrace();
        }
       /* finally {
            try{
                if(oos!=null){
                    oos.close();
                }
            }catch (IOException e){
                e.printStackTrace();
            }
        }*/


    }
    public static ArrayList<reader> readreader()  {
        ArrayList<reader> r1=new ArrayList<>();
        try{
            FileInputStream f=new FileInputStream("D:\\javaidea\\javaa\\src\\function/reader.txt");
            ObjectInputStream ois=new ObjectInputStream(f);
            r1=(ArrayList<reader>)ois.readObject();
            ois .close();
        }catch (Exception e) {
            e.printStackTrace();
        }

        return r1;
    }
    public static void addreader()
    {
        ArrayList<reader> rlist=readreader();
        System.out.println("请输入要添加的学号");
        int id=cin.nextInt();
        System.out.println("请输入要添加的姓名");
        String name=cin.next();
        System.out.println("请输入要添加的学院");
        String college=cin.next();
        System.out.println("请输入要添加的专业班级");
        String pro=cin.next();
        boolean flag=false;
        for(int i=0;i<rlist.size();i++)
        {
            if(rlist.get(i).getId()==id)
            {
                System.out.println("不好意思,该读者已经存在,请重新输入");
                flag=true;
                addreader();
            }
        }
        if(flag==false)
        {
            reader r=new reader(id,name,college,pro);
            rlist.add(r);
            writereader(rlist);
            System.out.println("添加读者成功");
        }

    }
    public static void findreader()
    {
        ArrayList<reader> rlist=readreader();
        while(true)
        {
            System.out.println("欢迎来到读者查询系统");
            System.out.println("请输入你的选择");
            System.out.println("0、退出查询");
            System.out.println("1、通过学号查找");
            System.out.println("2、通过姓名查找");
            System.out.println("3、通过专业班级查找");
            System.out.println("请输入你的选择");
            int choose=cin.nextInt();
            switch (choose)
            {
                case 0:return;
                case 1:
                    System.out.println("请输入要查找的学号");
                    int id=cin.nextInt();
                    boolean flag=false;
                    for(int i=0;i<rlist.size();i++)
                    {
                        if(rlist.get(i).getId()==id)
                        {
                            System.out.println(rlist.get(i).getId()+" "+rlist.get(i).getName()+" "+rlist.get(i).getCollege()+" "+rlist.get(i).getProfession());
                            flag=true;
                        }
                    }
                    if(flag==false)
                    {
                        System.out.println("不好意思,没有这个人");
                    }
                    break;
                case 2:
                    System.out.println("请输入要查找的姓名");
                    String name=cin.next();
                    boolean flag1=false;
                    for(int i=0;i<rlist.size();i++)
                    {
                        if(rlist.get(i).getName().equals(name))
                        {
                            System.out.println(rlist.get(i).getId()+" "+rlist.get(i).getName()+" "+rlist.get(i).getCollege()+" "+rlist.get(i).getProfession());
                            flag1=true;
                        }
                    }
                    if(flag1==false)
                    {
                        System.out.println("不好意思,没有这个人");
                    }
                    break;
                case 3:
                    System.out.println("请输入要查找的专业班级");
                    String cp=cin.next();
                    boolean flag2=false;
                    for(int i=0;i<rlist.size();i++)
                    {
                        if(rlist.get(i).getProfession().equals(cp))
                        {
                            System.out.println(rlist.get(i).getId()+" "+rlist.get(i).getName()+" "+rlist.get(i).getCollege()+" "+rlist.get(i).getProfession());
                            flag2=true;
                        }
                    }
                    if(flag2==false)
                    {
                        System.out.println("不好意思,没有这个人");
                    }
                    break;
            }
        }
    }
    public static void printreader()
    {
        ArrayList<reader> rlist=readreader();
        if(rlist.size()!=0)
        {
            for(int i=0;i<rlist.size();i++)
            {
                Collections.sort(rlist);
                System.out.println(rlist.get(i).getId()+" "+rlist.get(i).getName()+" "+rlist.get(i).getCollege()+" "+rlist.get(i).getProfession());
            }
        }
        else
        {
            System.out.println("不好意思,还未添加读者");
        }
    }
    public static void deletereader()
    {
        ArrayList<reader> rlist=readreader();
        System.out.println("请输入要删除的学号");
        int id=cin.nextInt();
        boolean flag=false;
        for(int i=0;i<rlist.size();i++)
        {
            if(rlist.get(i).getId()==id)
            {
                flag=true;
                rlist.remove(i);
                writereader(rlist);
                System.out.println("删除成功");
            }
        }
        if(flag==false)
        {
            System.out.println("不好意思,没有这个人");
        }
    }
    public static void changereader()
    {
        ArrayList<reader> rlist=readreader();
        System.out.println("请输入你要修改的学号");
        int id1=cin.nextInt();
        boolean flag=false;
        for(int i=0;i<rlist.size();i++)
        {
            if(rlist.get(i).getId()==id1)
            {
                System.out.println("请输入要修改的学号");
                int id=cin.nextInt();
                System.out.println("请输入要修改的姓名");
                String name=cin.next();
                System.out.println("请输入要修改的学院");
                String college=cin.next();
                System.out.println("请输入要修改的专业班级");
                String pro=cin.next();
                reader r=new reader(id,name,college,pro);
                rlist.set(i,r);
                writereader(rlist);
                flag=true;
                System.out.println("修改读者成功");
            }
        }
        if(flag==false)
        {
            System.out.println("不好意思,没有这个人");
        }
    }
}

booksystem类

package system;

import java.util.Scanner;
import function.*;
public class booksystem {
    public void menu()
    {
        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、打印图书------");
    }
    public void bs()
    {

        while(true)
        {
            menu();
            System.out.println("------请输入你的选择------");
            Scanner cin=new Scanner(System.in);
            int choose=cin.nextInt();
            bookfunc book=new bookfunc();
            switch (choose)
            {
                case 0:return;
                case 1:
                    book.addbook();
                    break;
                case 2:
                    book.findbook();
                    break;
                case 3:
                    book.changebook();
                    break;
                case 4:
                    book.deletebook();
                    break;
                case 5:
                    book.printbook();
                    break;
            }
        }
    }
}

borrowsystem类

package system;

import java.util.Scanner;
import function.*;
public class borrowsystem {
    public void menu()
    {
        System.out.println("------欢迎来到借阅管理系统------");
        System.out.println("------0、退出借阅------");
        System.out.println("------1、借书------");
        System.out.println("------2、还书------");
        System.out.println("------3、打印借阅信息------");
    }
    public void bs()
    {
        while(true)
        {
            menu();
            System.out.println("请输入你的选择");
            Scanner cin=new Scanner(System.in);
            int choose=cin.nextInt();
            borrowfunc borr=new borrowfunc();
            switch (choose)
            {
                case 0:return;
                case 1:
                    borr.borrowb();
                    break;
                case 2:
                    borr.returnb();
                    break;
                case 3:
                    borr.printborrow();
                    break;

            }
        }
    }
}

readersystem类

package system;

import function.readerfunc;

import java.util.Scanner;

public class readersystem {
    public void menu()
    {
        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、打印读者------");
    }
    public void rs()
    {
        while(true)
        {
            menu();
            System.out.println("------请输入你的选择------");
            Scanner cin=new Scanner(System.in);
            int choose=cin.nextInt();
            readerfunc re=new readerfunc();
            switch (choose)
            {
                case 0:return;
                case 1:
                    re.addreader();
                    break;
                case 2:
                    re.findreader();
                    break;
                case 3:
                    re.changereader();
                    break;
                case 4:
                    re.deletereader();
                    break;
                case 5:
                    re.printreader();
                    break;
            }

        }
    }
}

Main类

import library.book;
import library.manger;
import function.*;
import java.io.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import java.util.TreeSet;
import system.*;
public class Main {

    public void menu(){
        System.out.println("------欢迎来到图书管理系统------");
        System.out.println("------0、退出系统------");
        System.out.println("------1、管理员登录------");
        System.out.println("------2、普通用户------");
    }
    public void menu1()
    {
        System.out.println("------欢迎来到图书馆-------");
        System.out.println("------0、退出系统------");
        System.out.println("------1、借书或还书------");

    }
    public static void main(String[] args) {
        Main m=new Main();

        while(true)
        {
            m.menu();
            System.out.println("------请输入你的选择------");
            Scanner cin=new Scanner(System.in);
            int choose=cin.nextInt();
            booksystem book=new booksystem();
            borrowsystem borrow=new borrowsystem();
            readersystem reader=new readersystem();
            manger ma=new manger();
            switch (choose)
            {
                case 0:return;
                case 1:
                    ma.signin();
                    break;
                case 2:
                    m.person();
                    break;




            }
        }

    }
    public void person()
    {
        while(true)
        {
            menu1();
            System.out.println("------请输入你的选择------");
            Scanner cin=new Scanner(System.in);
            borrowsystem bo=new borrowsystem();
            int choose=cin.nextInt();
            switch (choose)
            {
                case 0:return;
                case 1:
                    bo.bs();
                    break;



            }
        }
    }
}

总结

在写的过程中,遇到过很多问题,都是一些细节的问题,通过查资料,问学长也都解决了,让自己对java语法知识有了进一步的认识。我在写的过程中,一开始思路不i清晰,导致写的很慢,在确定思路后,边写边测试每个部分是否能正常运行,很快就写完了。通过写这个图书管理系统,让我明白了动手实践的重要,只有亲手写了才知道一个小错误可能卡半天。这应该也是我第一次写这么长的代码,还可以继续优化以及增添一些功能,以后继续努力吧。

(代码中可能有错误,欢迎指出。)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值