JAVA图书管理系统详细代码

这篇博客详细介绍了如何使用JAVA构建一个图书管理系统,包括主函数、图书操作、用户操作接口以及图书和用户类。系统支持增加图书、借阅、删除、显示、查找和归还等功能,并区分了管理员和普通用户的操作权限。代码结构清晰,易于理解。

图书管理系统

代码主要分为四个大部分,主函数,图书相关函数,操作,以及使用者。分为三个包:book、operation、user和一个单独的主函数。

主函数

import book.BookList;
import user.AdiminUser;
import user.NormalUser;
import user.User;

import java.util.Scanner;

public class Main {
   
   
    public static User login() {
   
   
        System.out.println("请输入姓名:");
        Scanner scan=new Scanner(System.in);
        String name=scan.nextLine();
        System.out.println("请输入你的身份(1->管理员  0->用户):");
        int id=scan.nextInt();
        if(id==1){
   
   
            return new AdiminUser(name);
        }else{
   
   
            return new NormalUser(name);
        }
    }

    public static void main(String[] args) {
   
   
        BookList bookList =new BookList();
        while(true) {
   
   
        User user=login();
            int choice = user.menu();
            user.doOperation(choice, bookList);//对图书进行相关的操作
        }
    }
}

图书相关操作(operation包)

操作接口

对于每一个操作都有相近的一部分,刚好可以用接口,在User(使用者)中利用接口类型的数组来进行相关的操作。在下面的User中会具体说。

package operation;

import book.Book;
import book.BookList;

public interface IOpreation {
   
   

    public void work(BookList booklist);
}

增加图书

增加图书只需要在数组的最后添加即可,于是要利用booklist.getUsedsize();得到图书数组的使用长度,决定要增加的图书应该所在的位置。

package operation;

import book.Book;
import book.BookList;

import java.util.Scanner;

public class AddOperation implements IOpreation{
   
   
    @Override
    public void work(BookList booklist) {
   
   

        System.out.println("新增图书");
        int size=booklist.getUsedsize();
        Scanner scan=new Scanner(System.in);
        System.out.println("请输入图书名称:");
        String name=scan.nextLine();
        System.out.println("请输入图书作者:");
        String anuthor=scan.nextLine();
        System.out.println("请输入图书价格:");
        int price=scan.nextInt();
        System.out.println("请输入图书种类:");
        String type=scan.nextLine();
        Book book=new Book(name,anuthor,price,type);
        booklist.setBooklist(size,book);
        System.out.println("新增书籍成功");
        booklist.setUsedsize(size+1);
    }
}

借阅图书

对于借阅图书只需要将图书信息中的布尔型变量isBorrowed变量变为true即可,首先还是要遍历booklist找到该书。

package operation;

import book.Book;
import book.BookList;

import java.util.Scanner;

public class BorrowOperation implements IOpreation {
   
   
    public void work(BookList booklist){
   
   
        System.out
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值