创建一个基于命令行的简单图书馆管理系统。它可以实现图书的基本功能,如增删查改、用户管理、账户登录等。

一、创建图书实体类

定义一个图书的实体类,包括编号,书名,作者,以及库存等字段。

public class Book {     private String id;     private String title;     private String author;     private int stock;     public Book(String id, String title, String author, int stock) {         this.id = id;         this.title = title;         this.author = author;         this.stock = stock;     }     // getters and setters }

二、创建图书管理类

创建一个用于管理图书的类,包含添加、删除、更新和搜索等操作方法。

import java.util.ArrayList; public class BookManager {     private ArrayList<Book> books;     public BookManager() {         books = new ArrayList<>();     }     public void addBook(Book book) {         books.add(book);     }     public void deleteBook(String id) {         for(Book book : books) {             if (book.getId().equals(id)) {                  books.remove(book);                  break;             }          }     }     public void updateBook(Book newBook) {         for (Book book : books) {             if (book.getId().equals(newBook.getId())) {                 books.remove(book);                 books.add(newBook);                 break;             }         }     }     public Book findBook(String id) {         for (Book book : books) {             if (book.getId().equals(id)) {                  return book;             }         }         return null;     } }

三、创建用户和用户管理类

创建一个用户的实体类,包括用户名和密码等字段。

public class User {     private String username;     private String password;     public User(String username, String password) {         this.username = username;         this.password = password;     }     // getters and setters }

用于管理用户账号的类,包含添加、删除、查找和验证账号的方法。

import java.util.ArrayList; public class UserManager {     private ArrayList<User> users;     public UserManager() {         users = new ArrayList<>();     }     public void addUser(User user) {         users.add(user);     }     public void deleteUser(String username) {         for(User user : users) {             if (user.getUsername().equals(username)) {                 users.remove(user);                 break;             }         }     }     public User findUser(String username) {         for (User user : users) {             if (user.getUsername().equals(username)) {                 return user;             }         }         return null;     }     public boolean validateUser(String username, String password) {         for (User user : users) {             if (user.getUsername().equals(username) && user.getPassword().equals(password)) {                 return true;             }         }         return false;     } }

四、应用主类和功能选择

创建一个主类,用于实现添加、删除、更新和搜索图书的操作,以及用户的登录和注册。

import java.util.Scanner; public class LibraryApp {     private static BookManager bookManager = new BookManager();     private static UserManager userManager = new UserManager();     private static Scanner scanner = new Scanner(System.in);     public static void main(String[] args) {         outerloop:         while (true) {             System.out.println("1. 登录 2. 注册 3. 退出");             int choice = scanner.nextInt();             switch (choice) {                 case 1:                     if (login()) {                         bookOperation();                     }                     break;                 case 2:                     register();                     break;                 case 3:                     break outerloop;                 default:                     System.out.println("请输入正确的选项!");             }         }     }     // login, register and bookOperation methods are defined here... }

五、用户登录和注册方法

登录和注册的方法定义为下:

     public static boolean login() {         System.out.println("请输入用户名:");         String username = scanner.next();         System.out.println("请输入密码:");         String password = scanner.next();         if (userManager.validateUser(username, password)) {             System.out.println("登录成功!");             return true;         } else {             System.out.println("用户名或密码错误!");             return false;         }     }     public static void register() {         System.out.println("请输入用户名:");         String username = scanner.next();         System.out.println("请输入密码:");         String password = scanner.next();         User user = new User(username, password);         userManager.addUser(user);         System.out.println("注册成功!");     }

六、图书的管理操作

最后定义一个用于操作图书的方法,包括添加、删除、更新和搜索图书。

     public static void bookOperation() {         while (true) {             System.out.println("1. 添加图书 2. 删除图书 3. 更新图书 4. 查找图书 5. 退出");             int choice = scanner.nextInt();             switch (choice) {                 case 1:                     addBook();                     break;                 case 2:                     deleteBook();                     break;                 case 3:                     updateBook();                     break;                 case 4:                     findBook();                     break;                 case 5:                     return;                 default:                     System.out.println("请输入正确的选项!");             }         }     }