Java版图书信息管理系统(链表+文件)

本文详细介绍了使用Java编程实现一个图书信息管理系统的过程,该系统结合链表数据结构进行图书数据的增删改查,并利用文件进行数据持久化存储。通过实例代码解析关键功能的实现细节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//注:由C语言改版而成,注释可能不符
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.*;

/*
         图书登记管理程序          
   
*/
//定义一个图书结构体
class BOOK {
   
	String ISBN;// 国际标准书号(ISBN)
	String name;// 图书名称
	String publishHouse;// 图书出版社
	String author;// 图书作者
	Float price;// 图书价格,并初始化
	String publishDate;// 出版日期
	Integer amount;// 图书数量
	BOOK pNext;
}

public class Main {
   
	static Scanner in = new Scanner(System.in);
	static BOOK head = new BOOK();// 头结点,全局变量
//=======main========main==========main

	public static void main(String[] args) throws InterruptedException {
   
		// head.pNext=null;
		// system(" mode con cols=130 lines=45 "); //cols为控制台的宽度,lines则代表控制台的高度。
		while (true) {
   
			displayMenu();
			doMenu();
			// doMenu();
		}
	}

//=========main======main==========main===========main========main==========main===========main
//   显示菜单
	static void displayMenu() {
   
		System.out.println("\t\t                         \t\t ");
		System.out.println("\t\t*****************************************");
		System.out.println("\t\t*                        \t\t");
		System.out.println("\t              图书登记管理系统   \t\t");
		System.out.println("\t\t*                        \t\t");
		System.out.println("\t\t*\t\t1-从键盘输入添加新图书\t\t");
		System.out.println("\t\t*                        \t\t");
		System.out.println("\t\t*\t\t2-从文件中添加新图书\t\t");
		System.out.println("\t\t*                        \t\t");
		System.out.println("\t\t*\t\t3-保存所有图书信息到文件\t\t");
		System.out.println("\t\t*                        \t\t");
		System.out.println("\t\t*\t\t4-显示书库所有图书信息\t\t");
		System.out.println("\t\t*                        \t\t");
		System.out.println("\t\t*\t\t5-根据作者,查找图书\t\t");
		System.out.println("\t\t*                        \t\t");
		System.out.println("\t\t*\t\t6-根据ISBN,查找图书\t\t");
		System.out.println("\t\t*                        \t\t");
		System.out.println("\t\t*\t\t7-根据ISBN,修改图书\t\t");
		System.out.println("\t\t*                        \t\t");
		System.out.println("\t\t*\t\t8-根据ISBN,删除图书\t\t");
		System.out.println("\t\t*\t\t   \t\t\n");
		System.out.println("\t\t*\t\t9-查看图书总数量\t\t");
		System.out.println("\t\t*\t\t    \t\t\n");
		System.out.println("\t\t*\t\t0---退出---     \t\t");
		System.out.println("\t\t*                        \t\t");
		System.out.println("\t\t*                        \t\t");
		System.out.println("\t\t*****************************************");
	}

	static void doMenu() {
   
		System.out.println("请输入数字进行选择");
		int choice = in.nextInt();
		switch (choice) {
   
		case 1:
			addNewBook();
			displayMenu();
			break;
		case 2:
			addBookFromFile()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值