21xrx.com
2024-12-28 02:18:50 Saturday
登录
文章检索 我的文章 写文章
Java实现图书管理系统
2023-06-13 01:55:26 深夜i     --     --
Java 图书管理系统 程序设计

图书管理系统是常见的管理信息系统,可以用于图书馆、书店等场景。本文将介绍如何使用Java编写一个基本的图书管理系统程序。

程序的主要功能包括:添加图书信息、删除图书信息、查询图书信息、借书和还书等操作。具体实现过程如下:

1. 首先,创建一个图书类Book,其中包括书名、作者、出版社、出版日期、数量等属性。代码如下:


public class Book {

  private String name;

  private String author;

  private String publisher;

  private String publicationDate;

  private int quantity;

  

  // 构造函数

  public Book(String name, String author, String publisher, String publicationDate, int quantity)

    this.name = name;

    this.author = author;

    this.publisher = publisher;

    this.publicationDate = publicationDate;

    this.quantity = quantity;

  

  

  // getter and setter 方法

  public String getName()

    return name;

  

  public void setName(String name)

    this.name = name;

  

  // 其他属性的getter and setter 方法

  ...

}

2. 创建一个图书管理类BookManager,其中包括添加图书、删除图书、查询图书和借书还书等操作。代码如下:


import java.util.ArrayList;

import java.util.List;

import java.util.Scanner;

public class BookManager {

  private List books; // 存储图书信息

  

  // 构造函数

  public BookManager() {

    books = new ArrayList<>();

  }

  

  // 添加图书

  public void addBook() {

    Scanner scanner = new Scanner(System.in);

    

    System.out.println("请输入书名:");

    String name = scanner.nextLine();

    System.out.println("请输入作者:");

    String author = scanner.nextLine();

    System.out.println("请输入出版社:");

    String publisher = scanner.nextLine();

    System.out.println("请输入出版日期:");

    String publicationDate = scanner.nextLine();

    try {

      System.out.println("请输入数量:");

      int quantity = scanner.nextInt();

      scanner.nextLine();

      Book book = new Book(name, author, publisher, publicationDate, quantity);

      books.add(book);

      System.out.println("添加成功!");

    } catch (Exception e) {

      System.out.println("输入错误!请重新输入。");

    }

  }

  

  // 删除图书

  public void deleteBook() {

    Scanner scanner = new Scanner(System.in);

    

    System.out.println("请输入书名:");

    String name = scanner.nextLine();

    boolean flag = false;

    for (Book book : books) {

      if (book.getName().equals(name)) {

        books.remove(book);

        flag = true;

        System.out.println("删除成功!");

        break;

      }

    }

    if (!flag) {

      System.out.println("图书不存在!");

    }

  }

  

  // 查询图书

  public void queryBook() {

    Scanner scanner = new Scanner(System.in);

    

    System.out.println("请输入书名:");

    String name = scanner.nextLine();

    boolean flag = false;

    for (Book book : books) {

      if (book.getName().equals(name)) {

        System.out.println("书名:" + book.getName());

        System.out.println("作者:" + book.getAuthor());

        System.out.println("出版社:" + book.getPublisher());

        System.out.println("出版日期:" + book.getPublicationDate());

        System.out.println("数量:" + book.getQuantity());

        flag = true;

        break;

      }

    }

    if (!flag) {

      System.out.println("图书不存在!");

    }

  }

  

  // 借书

  public void borrowBook() {

    Scanner scanner = new Scanner(System.in);

    

    System.out.println("请输入书名:");

    String name = scanner.nextLine();

    boolean flag = false;

    for (Book book : books) {

      if (book.getName().equals(name)) {

        if (book.getQuantity() > 0) {

          book.setQuantity(book.getQuantity() - 1);

          System.out.println("借书成功!当前库存:" + book.getQuantity());

        } else {

          System.out.println("库存不足!无法借书。");

        }

        flag = true;

        break;

      }

    }

    if (!flag) {

      System.out.println("图书不存在!");

    }

  }

  

  // 还书

  public void returnBook() {

    Scanner scanner = new Scanner(System.in);

    

    System.out.println("请输入书名:");

    String name = scanner.nextLine();

    boolean flag = false;

    for (Book book : books) {

      if (book.getName().equals(name)) {

        book.setQuantity(book.getQuantity() + 1);

        System.out.println("还书成功!当前库存:" + book.getQuantity());

        flag = true;

        break;

      }

    }

    if (!flag) {

      System.out.println("图书不存在!");

    }

  }

}

3. 创建一个测试类TestBookManager,用于测试图书管理系统的功能。代码如下:


public class TestBookManager {

  public static void main(String[] args) {

    BookManager bookManager = new BookManager();

    

    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. 还书");

      System.out.println("0. 退出");

      

      Scanner scanner = new Scanner(System.in);

      int choice = scanner.nextInt();

      scanner.nextLine();

      

      switch (choice) {

        case 1:

          bookManager.addBook();

          break;

        case 2:

          bookManager.deleteBook();

          break;

        case 3:

          bookManager.queryBook();

          break;

        case 4:

          bookManager.borrowBook();

          break;

        case 5:

          bookManager.returnBook();

          break;

        case 0:

          System.exit(0);

        default:

          System.out.println("输入错误!请重新输入。");

          break;

      }

    }

  }

}

以上就是Java编写图书管理系统程序的基本实现过程。通过本文的介绍,你可以了解到如何使用Java编写一个简单的管理信息系统,也可以扩展该程序的功能,使其更加完善。

  
  
下一篇: 更适合初学者

评论区

{{item['qq_nickname']}}
()
回复
回复