为了账号安全,请及时绑定邮箱和手机立即绑定

图书管理系统程序 求大神看一下怎么改 (浏览时有问题)别的地方也帮着看看有没有问题吧 谢谢

图书管理系统程序 求大神看一下怎么改 (浏览时有问题)别的地方也帮着看看有没有问题吧 谢谢

慕用2047043 2017-06-04 23:09:00
/*一、 创建一个用于图书管理的图书类。(1)包含图书名称、ISBN编号 、作者、出版社、单价等属性;(2)定义各属性的set XXXX、getXXXX方法,用于对成员变量的封闭;(3)定义无参构造方法、带参构造方法;(4)定义输出方法,用于输出图书对象的信息。二、 利用图书类 ,设计新的图书库类,完成以下操作:(1)成员变量:包含图书数组、图书数量两个属性;(2)构造方法:以图书数量为参数,创建的图书库对象;(3)成员方法:  功能:添加图书  功能:根据给定的图书ISBN编号查找图书  功能:按出版社顺序,对所有图书进行排序  功能:输出所有图书信息  *从文件导入:将指定文本文件中的图书信息,写入图书库类的图书集合中(追加,或全新添加)。  *导出到文件:将当前图书集合中的图书信息,写入指定的文本文件,以便于用户查看。(文本文件的内容是字符)三、 利用图书库类,创建图书库管理类,使其能够通过菜单,进行图书库的管理。(1) 设计主菜单(创建,导入,退出)(2) 创建完成后,进入二级菜单(浏览,查找,添加,删除,排序,导出,退出)其中的"导入"是指,从指定文件读入系统定义的图书库类对象中;"导出"是指,将程序中的图书库类对象写入指定的文件中。其它功能:也可以添加一个功能 ,将图书库类集合中的图书信息以文本的形式保存在文件中,用户可以直接读取文件中的文本信息。*/import java.util.Scanner;import java.io.*;   class Book implements Serializable{ private static final long serialVersionUID = 1L; private String bookname;  private String number;   private String author;  private String press;    private String price; public Book() { } public Book(String bookname,String number,String author,String press,String price) { this.bookname=bookname; this.number=number; this.author=author; this.press=press; this.price=price; } public String getBookname() { return this.bookname; } public String getNumber() { return this.number; } public String getAuthor() { return this.author; } public String getPress() { return this.press; } public String getPrice() { return this.price; } public void setBookname(String bookname) { this.bookname=bookname; } public void setNumber(String number) { this.number=number; } public void setAuthor(String author) { this.author=author; } public void setPress(String press) { this.press=press; } public void setPrice(String price) { this.price=price; } public void speak() { System.out.println(this.bookname+"          "+this.number+"          "+this.author+"          "+this.press+"          "+this.price); } public String ToString() { return this.bookname+"    "+this.number+"     "+this.author+"     "+this.press+"     "+this.price; }}class Library implements Serializable{ Book[] array=new Book[100];    Book book=new Book(); int num=0;   public void add(String bookname,String number,String author,String press,String price) { array[num]=new Book(bookname,number,author,press,price); num++; } public void seek(String number) { int i; for(i=0;i<num;i++) { if(array[i].getNumber().equals(number)) {       System.out.println("图书         编码        作者        出版社         价格"); array[i].speak(); break; } } if(i==(num+1)) { System.out.println("查无此物"); } }    public void paixu() {       Book t=new Book(); int i,j; for(i=0;i<num-1;i++) { for(j=1;j<num;j++) { if(array[i].getPress().compareTo(array[j].getPress())<0) { t=array[i];    array[i]=array[j]; array[j]=t; }    }    }   } public void look() { System.out.println("图书           编码           作者             出版社              价格"); for(int i=0;i<num;i++) { array[i].speak(); } }     public void delete(String bookname) { int i; for(i=0;i<num;i++) { if(array[i].getBookname().equals(bookname)) { array[i]=array[num-1]; num=num-1; System.out.println("删除成功"); } } if(i>=num) System.out.println("删除失败"); }     public void daoru() throws Exception    { System.out.println("开始读取"); FileInputStream fis =new FileInputStream("book.txt"); ObjectInputStream ois=new ObjectInputStream(fis);    book=(Book)ois.readObject(); ois.close(); fis.close(); System.out.println("读取成功"); }       public void daochu()throws Exception           { FileOutputStream fos=new FileOutputStream("book1.txt"); ObjectOutputStream oos=new ObjectOutputStream(fos);   oos.writeObject(book); fos.close(); oos.close(); System.out.println("导出成功!");  }      public void baocun()throws Exception { FileWriter fw=new FileWriter("图书管理.txt"); BufferedWriter bw=new BufferedWriter(fw); for(int i=0;i<num;i++) { String line=array[i].ToString(); bw.write(line); bw.newLine(); } bw.close(); fw.close(); System.out.println("保存成功!"); }} class Menu implements Serializable{ public  void FirstMenu() throws Exception {   Library library=new Library(); System.out.println("**********图书管理**********"); System.out.println("1、创建菜单"); System.out.println("2、导入 "); System.out.println("3、退出"); System.out.println("****************************"); System.out.println("请输入你要操作的序号"); Scanner sc=new Scanner(System.in); int a=sc.nextInt(); switch(a) { case 1: System.out.println("请输入图书数量:"); int n=sc.nextInt(); System.out.println("请输入"+n+"个图书的信息:"); for(int i=1;i<=n;i++) { System.out.println("输入第"+i+"个图书名称:");   String bookname=sc.next();   System.out.println("输入第"+i+"个图书编码:");     String number=sc.next();     System.out.println("输入第"+i+"个图书作者:");     String author=sc.next();     System.out.println("输入第"+i+"个出版社:");     String press=sc.next();     System.out.println("输入第"+i+"个图书价格:");     String price=sc.next(); library.add(bookname,number,author,press,price); } SecondMenu(); case 2:        library.daoru();        SecondMenu(); case 3:   System.out.println("谢谢使用,再见!"); System.exit(0);                     }      }            public  void SecondMenu() throws Exception      {         Library li=new Library();         Scanner sc=new Scanner(System.in);         do         {          System.out.println("**********图书管理**********"   ); 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("7、导入 "); System.out.println("8、保存到文件"); System.out.println("9、退出"   ); System.out.println("****************************"  ); System.out.println("请输入你要操作的序号"   ); int b=sc.nextInt(); switch(b) { case 1: System.out.println("图书信息"); li.look();    break; case 2: System.out.println("输入要查看的图书编号:");        String number=sc.next(); li.seek(number);    break; case 3: System.out.println("请输入图书数量:"); int c=sc.nextInt(); System.out.println("请输入"+c+"个图书的信息:");    for(int i=1;i<=c;i++) { System.out.println("输入图书名称:"); String bookname=sc.next(); System.out.println("输入图书编码:"); number=sc.next(); System.out.println("输入图书作者:"); String author=sc.next(); System.out.println("输入出版社:"); String press=sc.next(); System.out.println("输入图书价格:"); String price=sc.next(); li.add(bookname,number,author,press,price); }    break; case 4: System.out.println("输入要删除的图书名称"); String bookname=sc.next(); li.delete(bookname);    break; case 5: System.out.println("按图书出版社顺序排为:"); li.paixu(); li.look();    break; case 6: li.daochu(); break; case 7: li.daoru(); break; case 8: li.baocun();    break; case 9:    System.exit(0); }         }while(true);       }}class LibraryMenu implements Serializable{ public static void main(String[] args) throws Exception { Menu me=new Menu(); me.FirstMenu(); }}
查看完整描述

4 回答

?
黄小凡

TA贡献69条经验 获得超36个赞

天。试问,放一个这么大的程序,如果别人问你, 你愿意回答吗?你应该自己先找好自己最想知道的问题,再提问

查看完整回答
1 反对 回复 2017-06-05
?
慕粉2348509682

TA贡献2条经验 获得超1个赞

@_@

查看完整回答
反对 回复 2017-06-08
?
CAPRICE双子

TA贡献6条经验 获得超0个赞

报的什么错啊

查看完整回答
反对 回复 2017-06-05
  • 4 回答
  • 4 关注
  • 1439 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信