使用Java编程语言进行实验。采用面向对象的思想进行系统设计。 实现基本的图书管理功能,包括添加图书、删除图书、查询图书信息等。

需求分析

1. 确定系统的基本功能和界面设计。

2. 定义图书类(Book)及其属性和方法。

3. 定义图书管理系统类(LibrarySystem)及其属性和方法。

系统设计与实现

1. 创建一个图书类(Book),包含图书名称、作者、出版社等属性,并实现相关的get和set方法。

2. 创建一个图书管理系统类(LibrarySystem),包含添加图书、删除图书、查询图书信息等方法。

3. 在LibrarySystem类中,使用集合(如ArrayList)来存储图书信息。

4. 实现用户交互界面,可以使用命令行或者图形界面。

第一步:创建一个图书类(Book),包含图书名称、作者、出版社等属性

private String name;

   private String author;

   private String publisher;

   public Book(String name,String author,String publisher) {

      this.name=name;

      this.author=author;

      this.publisher=publisher;

   }

第二步:图书名称、作者、出版社实现相关的get和set方法。

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;

    }

第三步:创建一个图书管理系统类(LibrarySystem),包含添加图书、删除图书、查询图书信息等方法。

while (true) {

            System.out.println("请选择你要进行的操作:1:添加图书,2:删除图书,3:查询图书,4:查看图书,5:退出系统");

         // 键盘录入

            Scanner sc = new Scanner(System.in);

            String type = sc.next();

            switch (type) {

                case "1":

                    // 添加

                    addBook(list);

                    break;

                case "2":

                // 删除图书

                    deleteBook(list);

                    break;

                case "3":

                // 查询某本图书

                findBookByName(list);

                    break;

                case "4":

                // 查看所有图书

                    findAllBooks(list);

                    break;

                case "5":

                System.out.println("感谢使用,再见");

                    System.exit(0); // 退出系统

                default:

                    System.out.println("选择有误,请重新输入");

                    break;

            }

        }

第四步:在LibrarySystem类中,使用集合(如ArrayList)来存储图书信息。

//添加图书

   private static void addBook(ArrayList list) {

      // TODO Auto-generated method stub

      // 键盘录入

        Scanner sc = new Scanner(System.in);

        System.out.println("请输入图书信息:");

        System.out.println("名称:");

        String name = sc.next();

        System.out.println("作者:");

        String author = sc.next();

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

        String publisher = sc.next();

        // 将信息封装到图书对象

        Book b = new Book(name, author, publisher);

        // 添加到集合

        list.add(b);

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

    }

   // 删除图书

   private static void deleteBook(ArrayList list) {

      // TODO Auto-generated method stub

      Scanner sc = new Scanner(System.in);

        System.out.println("请输入您要删除的图书名称:");

        String name = sc.next();

        for (int i = 0; i < list.size(); i++) {

            Book b = list.get(i);

            if (name.equals(b.getName())) { // 图书存在

                // 删除图书并结束方法

                list.remove(i);

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

                return;

            }

        }

        System.out.println("没有该名称的图书信息");

}

    // 根据图书的名称查询图书信息

    private static void findBookByName(ArrayList list) {

        Scanner sc = new Scanner(System.in);

        System.out.println("请输入您要查询的图书名称:");

        String name = sc.next();

        for (int i = 0; i < list.size(); i++) {

            Book b = list.get(i);

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

                System.out.println("书名\t" + "作者\t" + "出版社");

                System.out.println(b.getName() + "\t" + b.getAuthor() + "\t" + b.getPublisher());

                return;

            }

        }

        System.out.println("没有该名称图书信息");

    }

 // 查看所有图书信息

    private static void findAllBooks(ArrayList list) {

        if (list == null || list.size() == 0) {

            System.out.println("尚无图书信息");

            return;

        }

        System.out.println("书名\t" + "作者\t" + "出版社");

        for (int i = 0; i < list.size(); i++) {

            Book b = list.get(i);

            System.out.println(b.getName() + "\t" + b.getAuthor() + "\t" + b.getPublisher());

        }

    }

源代码:

Book.java:

package text;

public class Book {

   private String name;

   private String author;

   private String publisher;

   public Book(String name,String author,String publisher) {

      this.name=name;

      this.author=author;

      this.publisher=publisher;

   }

  

   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;

    }

}

LibrarySystem.java:

package text;

import java.util.*;

public class LibrarySystem {

   public static void main(String[] args) {

      // 创建集合用于存储图书信息

        ArrayList list = new ArrayList<>();

        while (true) {

            System.out.println("请选择你要进行的操作:1:添加图书,2:删除图书,3:查询图书,4:查看图书,5:退出系统");

         // 键盘录入

            Scanner sc = new Scanner(System.in);

            String type = sc.next();

            switch (type) {

                case "1":

                    // 添加

                    addBook(list);

                    break;

                case "2":

                // 删除图书

                    deleteBook(list);

                    break;

                case "3":

                // 查询某本图书

                findBookByName(list);

                    break;

                case "4":

                // 查看所有图书

                    findAllBooks(list);

                    break;

                case "5":

                System.out.println("感谢使用,再见");

                    System.exit(0); // 退出系统

                default:

                    System.out.println("选择有误,请重新输入");

                    break;

            }

        }

    }

   //添加图书

   private static void addBook(ArrayList list) {

      // TODO Auto-generated method stub

      // 键盘录入

        Scanner sc = new Scanner(System.in);

        System.out.println("请输入图书信息:");

        System.out.println("名称:");

        String name = sc.next();

        System.out.println("作者:");

        String author = sc.next();

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

        String publisher = sc.next();

        // 将信息封装到图书对象

        Book b = new Book(name, author, publisher);

        // 添加到集合

        list.add(b);

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

    }

   // 删除图书

   private static void deleteBook(ArrayList list) {

      // TODO Auto-generated method stub

      Scanner sc = new Scanner(System.in);

        System.out.println("请输入您要删除的图书名称:");

        String name = sc.next();

        for (int i = 0; i < list.size(); i++) {

            Book b = list.get(i);

            if (name.equals(b.getName())) { // 图书存在

                // 删除图书并结束方法

                list.remove(i);

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

                return;

            }

        }

        System.out.println("没有该名称的图书信息");

}

    // 根据图书的名称查询图书信息

    private static void findBookByName(ArrayList list) {

        Scanner sc = new Scanner(System.in);

        System.out.println("请输入您要查询的图书名称:");

        String name = sc.next();

        for (int i = 0; i < list.size(); i++) {

            Book b = list.get(i);

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

                System.out.println("书名\t" + "作者\t" + "出版社");

                System.out.println(b.getName() + "\t" + b.getAuthor() + "\t" + b.getPublisher());

                return;

            }

        }

        System.out.println("没有该名称图书信息");

    }

 // 查看所有图书信息

    private static void findAllBooks(ArrayList list) {

        if (list == null || list.size() == 0) {

            System.out.println("尚无图书信息");

            return;

        }

        System.out.println("书名\t" + "作者\t" + "出版社");

        for (int i = 0; i < list.size(); i++) {

            Book b = list.get(i);

            System.out.println(b.getName() + "\t" + b.getAuthor() + "\t" + b.getPublisher());

        }

    }

   }

你可能感兴趣的:(java,开发语言)