java实现的简单图书管理系统

设计一个图书管理系统,要求如下:
1、添加一本图书(书名、作者、售价)
2、删除所有指定作者的书
3、查询所有指定作者的书,按照售价升序排序。
4、将图书馆中存储的所有的图书缓存到磁盘上,路径不限。
5、读取本地缓存的所有的图书信息

class Book implements Serializable {
public String bookName;
public String bookAuthor;
public int bookPrice;

public Book(String bookName, String bookAuthor, int bookPrice) {
    this.bookName = bookName;
    this.bookAuthor = bookAuthor;
    this.bookPrice = bookPrice;
}

}
class LibraryManageSystem {
private LinkedList list = new LinkedList<>();

public void addBook(String bookName, String bookAuthor, int bookPrice) {
    list.add(new Book(bookName, bookAuthor, bookPrice));
}
public void removeBook(String authorName) {
    list.removeIf(book -> bookAuthor.equals(authorName));
    list.removeIf(book -> bookAuthor == authorName);
}    
public LinkedList<Book> queryBook(String authorName) {
    LinkedList<Book> result = new LinkedList<>();
    
    list.forEach(book -> {
        if (book.bookAuthor.equals(authorName)) {
            result.add(book);
        }
    });
 
    result.sort((b1, b2) -> b1.price - b2.price);
    
    return result;
}

public void save(String path) throws Exception {
    ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(path));
    oos.writeObject(list);
    oos.flush();
    oos.close();
}

public void load(String path) throws Exception {
    ObjectInputStream ois = new ObjectInputStream(new FileInputStrema(path));
    Object obj = ois.readObject();
    LinkedList result = null;
    if (obj instanceof LinkedList) {
        result = (LinkedList<Book>)obj;
    }
    
    this.list.addAll(result);
    
    ois.close();
}

}

好的,我可以帮你介绍一下 Java 实现简单图书管理系统的步骤。 步骤如下: 1. 定义图书 Book,包括属性书名作者,出版社,价格,数量等。 2. 定义一个图书管理 BookManager,包括方法:添加图书删除图书,修改图书信息,查找图书信息等。 3. 创建一个主程序 Main,实例化 BookManager 对象,通过调用 BookManager 对象中的方法,实现图书信息的管理。 4. 在 Main 中,通过控制台输入输出,实现用户与系统之间的交互。 示例代码如下: ``` // Book public class Book { private String name; // 书名 private String author; // 作者 private String publisher; // 出版社 private double price; // 价格 private int quantity; // 数量 // 构造函数 public Book(String name, String author, String publisher, double price, int quantity) { this.name = name; this.author = author; this.publisher = publisher; this.price = price; this.quantity = quantity; } // getter 和 setter 方法 public String getName() { return name; } public void setName(String name) { this.name = name; } public String getAuthor() { return author; } public void setAuthor(String author) { this.author = author; } public String getPublisher() { return publisher; } public void setPublisher(String publisher) { this.publisher = publisher; } public double getPrice() { return price; } public void setPrice(double price) { this.price = price; } public int getQuantity() { return quantity; } public void setQuantity(int quantity) { this.quantity = quantity; } } // BookManager import java.util.ArrayList; import java.util.Scanner; public class BookManager { private ArrayList<Book> bookList; // 图书列表 // 构造函数 public BookManager() { bookList = new ArrayList<Book>(); } // 添加图书 public void addBook() { Scanner input = new Scanner(System.in); System.out.print("请输入书名:"); String name = input.next(); System.out.print("请输入作者:"); String author = input.next(); System.out.print("请输入出版社:"); String publisher = input.next(); System.out.print("请输入价格:"); double price = input.nextDouble(); System.out.print("请输入数量:"); int quantity = input.nextInt(); Book book = new Book(name, author, publisher, price, quantity); bookList.add(book); System.out.println("添加成功!"); } // 删除图书 public void deleteBook() { Scanner input = new Scanner(System.in); System.out.print("请输入要删除书名:"); String name = input.next(); for (int i = 0; i < bookList.size(); i++) { Book book = bookList.get(i); if (book.getName().equals(name)) { bookList.remove(i); System.out.println("删除成功!"); return; } } System.out.println("未找到该书!"); } // 修改图书信息 public void modifyBook() { Scanner input = new Scanner(System.in); System.out.print("请输入要修改的书名:"); String name = input.next(); for (int i = 0; i < bookList.size(); i++) { Book book = bookList.get(i); if (book.getName().equals(name)) { System.out.print("请输入新的作者:"); String author = input.next(); System.out.print("请输入新的出版社:"); String publisher = input.next(); System.out.print("请输入新的价格:"); double price = input.nextDouble(); System.out.print("请输入新的数量:"); int quantity = input.nextInt(); book.setAuthor(author); book.setPublisher(publisher); book.setPrice(price); book.setQuantity(quantity); System.out.println("修改成功!"); return; } } System.out.println("未找到该书!"); } // 查找图书信息 public void searchBook() { Scanner input = new Scanner(System.in); System.out.print("请输入要查找的书名:"); String name = input.next(); for (int i = 0; i < bookList.size(); i++) { Book book = bookList.get(i); if (book.getName().equals(name)) { System.out.println("书名:" + book.getName()); System.out.println("作者:" + book.getAuthor()); System.out.println("出版社:" + book.getPublisher()); System.out.println("价格:" + book.getPrice()); System.out.println("数量:" + book.getQuantity()); return; } } System.out.println("未找到该书!"); } } // Main public class Main { public static void main(String[] args) { BookManager bookManager = new BookManager(); Scanner input = new Scanner(System.in); while (true) { System.out.println("请输入数字选择操作:"); System.out.println("1. 添加图书"); System.out.println("2. 删除图书"); System.out.println("3. 修改图书信息"); System.out.println("4. 查找图书信息"); System.out.println("5. 退出"); int choice = input.nextInt(); switch (choice) { case 1: bookManager.addBook(); break; case 2: bookManager.deleteBook(); break; case 3: bookManager.modifyBook(); break; case 4: bookManager.searchBook(); break; case 5: System.out.println("谢谢使用!"); System.exit(0); default: System.out.println("输入有误,请重新输入!"); } } } } ``` 以上就是一个简单图书管理系统Java 实现方法,希望能对你有所帮助。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值