51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

Java图书馆管理系统

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

一、创建图书实体类 {#title-1}

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

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
}

二、创建图书管理类 {#title-2}

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

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;
    }
}

三、创建用户和用户管理类 {#title-3}

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

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;
    }
}

四、应用主类和功能选择 {#title-4}

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

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...
}

五、用户登录和注册方法 {#title-5}

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

    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("注册成功!");
    }

六、图书的管理操作 {#title-6}

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

    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("请输入正确的选项!");
            }
        }
    }
赞(0)
未经允许不得转载:工具盒子 » Java图书馆管理系统