Java记录简易图书管理

package book;
import java.util.Scanner; 
import manager.BookManager;
public class Book {
    public String ISBN;
    String bookname;
    private String author;
    private String publisher;
    private double price;
    public Book() {
        
    }//空构造方法
    public Book(String ISBN,String bookname,String author,String publisher, double price) {
         this.ISBN = ISBN;
         this.bookname = bookname;
         this.author = author;
         this.publisher = publisher;
         this.price = price;
     }//调用私有变量
    public void setauthor(String author) {
        this.author = author;
    }
    public void setbookname(String bookname) {
        this.bookname = bookname;
    }
    public void setprice(double price) {
        this.price = price;
    }
    public void setpublisher(String publisher) {
        this.publisher = publisher;
    }
    public void setISBN(String ISBN) {
        this.ISBN = ISBN;
    }
    public String getISBN() {
        return ISBN;
    }
    public String getauthor() {
        return author;
    }
    public double getprice() {
        return price;
    }
    public String getpublisher() {
        return publisher;
    }
    public String getbookname() {
        return bookname;
    }
     public void pri() {
         System.out.println("本书的ISBN号为:"+ISBN);
         System.out.println("本书的书名:"+bookname);
         System.out.println("本书的作者:"+author);
         System.out.println("本书的出版社:"+publisher);
         System.out.println("本书的价格:"+price);
     }
}
package book;
import java.util.Scanner; 
import manager.BookManager;
public class test {
   public static void main(String args[]) {
       BookManager b = new BookManager();
       
       System.out.println("1-添加书籍");
       System.out.println("2-查询书籍");
       System.out.println("3-修改书籍");
       System.out.println("4-删除书籍");
       System.out.println("0-退出");
           Scanner in=new Scanner(System.in);
           int a=in.nextInt();
           while(true) {//循环
           while(a==1) {        
               System.out.println("请输入待添加的书籍信息");
               System.out.println("请输入ISBN");
               System.out.println("请输入书籍名称");
               System.out.println("请输入作者");
               System.out.println("请输入出版社");
               System.out.println("请输入书籍价格");
               b.addBook(in.next(),in.next(),in.next(),in.next(),in.nextDouble());
               System.out.println("1-添加书籍");
               System.out.println("2-查询书籍");
               System.out.println("3-修改书籍");
             System.out.println("4-删除书籍");
               System.out.println("0-退出");
               a=in.nextInt();
           }
           while(a==2) {
               System.out.println("请输入待查询的书籍名称");
            String name1=in.next();
            b.searchBook(name1);
               System.out.println("是否还需要查询");
               System.out.println("2-继续查询");
               System.out.println("3-修改书籍");
            System.out.println("4-删除书籍");
               System.out.println("0-退出");
               a=in.nextInt();
           }
           while(a==3) {
               System.out.println("请输入待修改的书籍信息");
               //System.out.println("请输入ISBN");
               System.out.println("请输入书籍名称");
               System.out.println("请输入作者");
               System.out.println("请输入出版社");
               System.out.println("请输入书籍价格");
               b.editBook(in.next(),in.next(),in.next(),in.nextDouble());
               System.out.println("修改完毕,是否进行如下操作");
               System.out.println("1-添加书籍");
               System.out.println("2-查询书籍");
               System.out.println("3-修改书籍");
             System.out.println("4-删除书籍");
               System.out.println("0-退出");
               a=in.nextInt();
           }
           while(a==4) {
               System.out.println("请输入待删除的书籍信息");
               //System.out.println("请输入ISBN");
               System.out.println("请输入书籍名称");
               System.out.println("请输入作者");
               System.out.println("请输入出版社");
               System.out.println("请输入书籍价格");
               b.deleteBook(in.next(),in.next(),in.next(),in.nextDouble());
               System.out.println("删除完毕,是否进行如下操作");
               System.out.println("1-添加书籍");
               System.out.println("2-查询书籍");
               System.out.println("3-修改书籍");
             System.out.println("4-删除书籍");
               System.out.println("0-退出");
               a=in.nextInt();
           }
           //while(a==0) {
               //System.out.println("结束运行");
       //    }没有0自然就退出了
   }
   }
}
package manager;
import book.Book; 
import book.test;
import java.util.*;
//引入其他包类
public class BookManager {
    static int cnt=0; //用于存储当前实际书的数量
    Book shu[] = new Book[10] ; //用于存储多本书对象的数组
    int max=10;  //用于存储最大存书数
    public BookManager() {
        /*定义构造方法,用来进行图书管理类对象的初始化,请编写方法体*/
       for(int i=0;i<10;i++) {
           shu[i] = new Book();
       }
    }
        /*添加图书的功能,请编写方法体*/
        public void addBook(String ISBN,String bookname,String author,String publisher,double price) {
             shu[cnt].ISBN=ISBN;
             shu[cnt].setauthor(author);
             shu[cnt].setbookname(bookname);
             shu[cnt].setpublisher(publisher);
             shu[cnt].setprice(price);
             cnt++;
             
        }
       /*按书名查询图书的功能,返回的信息是同名书籍在数组
        book中的编号所构成的整型数组,请编写方法体*/
        public void searchBook(String bookname) {
            int i=0;
           for(i=0;i<cnt;i++) {
               //System.out.println(cnt);
               //shu[cnt-1].pri();
               if(shu[i].getbookname().contentEquals(bookname)) {
                   System.out.println("同名书籍在数组");break;
               }
           }
           if(i==cnt) {
           System.out.println("同名书籍不在数组");
           }
    }
    /*按书名修改书籍信息的功能,可能同名书籍不止一个,附加题,选做,
     按指定要求修改某个具体书籍信息,请编写方法体*/
    public void editBook(String bookname,String author,String publisher,double price){
            for(int i=0;i<cnt;i++) {
                if(shu[i].getbookname().equals(bookname) && shu[i].getauthor().equals(author) && shu[i].getpublisher().equals(publisher)&& shu[i].getprice()==price){
                System.out.println("请输入你要修改的书籍信息:1为价格,2为书名");
                Scanner mag = new Scanner(System.in);
                int x = mag.nextInt();
                if(x==1)
                {
                    System.out.println("请输入你要修改的书籍价格信息:");
                    double newprice = mag.nextDouble();
                    shu[i].setprice(newprice);
                }
                if(x==2)
                {
                    System.out.println("请输入你要修改的书籍信息:");
                    String newname = mag.next();
                    shu[i].setbookname(newname);
                }
                break;
                }
            }
    }
    /*按书名删除书籍信息的功能,可能同名书籍不止一个,附加题,选做,
      按指定要求删除某个具体书籍信息,请编写方法体*/
    public void deleteBook(String bookname,String author,String publisher,double price){
           int x=0;//表示删除了第几本书
        for(int i=0;i<cnt;i++) {
            if(shu[i].getbookname().equals(bookname) && shu[i].getauthor().equals(author) && shu[i].getpublisher().equals(publisher)&& shu[i].getprice()==price) {
                   x=i;cnt--;break;//找到要删除的书
               }
           }
        for(int i=x;i<cnt;i++) {
            shu[i].setprice(shu[i+1].getprice());
            shu[i].setbookname(shu[i+1].getbookname());
            shu[i].setauthor(shu[i+1].getauthor());
            shu[i].setpublisher(shu[i+1].getpublisher());
            shu[i].setISBN(shu[i+1].getISBN());//被删除的后面前移
        }
    }
}

猜你喜欢

转载自www.cnblogs.com/zhuimingzhenbai/p/12658224.html