答案:该图书管理系统包含图书类和管理类,实现增删查功能。通过Book类封装属性,BookManager用ArrayList存储并操作图书,Main类提供菜单交互,结构清晰可扩展。

开发一个小型图书管理系统在Java中是一个非常适合初学者到中级开发者练习面向对象编程和基础数据结构的项目。它涵盖类设计、集合操作、用户交互和简单的持久化处理。以下是实现这样一个系统的关键步骤和代码结构。
一个基本的图书管理系统应具备以下功能:
使用面向对象思想,先定义一个Book类来封装图书的基本属性和行为。
public class Book {
private String isbn;
private String title;
private String author;
private int year;
public Book(String isbn, String title, String author, int year) {
this.isbn = isbn;
this.title = title;
this.author = author;
this.year = year;
}
// Getter 方法
public String getIsbn() { return isbn; }
public String getTitle() { return title; }
public String getAuthor() { return author; }
public int getYear() { return year; }
@Override
public String toString() {
return "ISBN: " + isbn + ", 书名: " + title + ", 作者: " + author + ", 年份: " + year;
}
}
这个类负责管理图书的增删查操作,使用ArrayList存储图书对象。
PhpEIP企业信息化平台主要解决企业各类信息的集成,能把各种应用系统(如内容管理系统,网上商城,论坛系统等)统一到企业信息化平台中,整个系统采用简单易用的模板引擎,可自定义XML标签,系统采用开放式模块开发,符合开发接口的模块可完全嵌入到平台;内容管理模块可自定义内容模型,系统自带普通文章模型和图片集模型,用户可以定义丰富的栏目构建企业门户,全站可生成静态页面,提供良好的搜索引擎优化;会员管理模
0
立即学习“Java免费学习笔记(深入)”;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class BookManager {
private List<Book> books;
private Scanner scanner;
public BookManager() {
books = new ArrayList<>();
scanner = new Scanner(System.in);
}
public void addBook() {
System.out.print("输入ISBN: ");
String isbn = scanner.nextLine();
System.out.print("输入书名: ");
String title = scanner.nextLine();
System.out.print("输入作者: ");
String author = scanner.nextLine();
System.out.print("输入出版年份: ");
int year = Integer.parseInt(scanner.nextLine());
Book book = new Book(isbn, title, author, year);
books.add(book);
System.out.println("图书添加成功!");
}
public void viewAllBooks() {
if (books.isEmpty()) {
System.out.println("暂无图书记录。");
} else {
for (Book book : books) {
System.out.println(book);
}
}
}
public void searchBooks() {
System.out.print("请输入要搜索的关键词(书名或作者): ");
String keyword = scanner.nextLine().toLowerCase();
List<Book> results = new ArrayList<>();
for (Book book : books) {
if (book.getTitle().toLowerCase().contains(keyword) ||
book.getAuthor().toLowerCase().contains(keyword)) {
results.add(book);
}
}
if (results.isEmpty()) {
System.out.println("未找到相关图书。");
} else {
System.out.println("搜索结果:");
for (Book book : results) {
System.out.println(book);
}
}
}
public void deleteBook() {
System.out.print("请输入要删除的图书ISBN: ");
String isbn = scanner.nextLine();
boolean removed = books.removeIf(book -> book.getIsbn().equals(isbn));
if (removed) {
System.out.println("图书删除成功!");
} else {
System.out.println("未找到该ISBN的图书。");
}
}
}
创建主类用于启动菜单循环。
public class Main {
public static void main(String[] args) {
BookManager manager = new BookManager();
Scanner scanner = new Scanner(System.in);
int choice;
while (true) {
System.out.println("\n=== 小型图书管理系统 ===");
System.out.println("1. 添加图书");
System.out.println("2. 查看所有图书");
System.out.println("3. 搜索图书");
System.out.println("4. 删除图书");
System.out.println("5. 退出");
System.out.print("请选择操作: ");
try {
choice = Integer.parseInt(scanner.nextLine());
} catch (NumberFormatException e) {
System.out.println("请输入有效数字!");
continue;
}
switch (choice) {
case 1 -> manager.addBook();
case 2 -> manager.viewAllBooks();
case 3 -> manager.searchBooks();
case 4 -> manager.deleteBook();
case 5 -> {
System.out.println("感谢使用,再见!");
return;
}
default -> System.out.println("无效选择,请重试。");
}
}
}
}
基本上就这些。这个系统虽然简单,但结构清晰,易于扩展。你可以在此基础上加入文件读写(如保存到txt或JSON)、图形界面(Swing/JavaFX),甚至连接数据库(JDBC)来提升功能。关键是理解类的设计与方法的职责划分。不复杂但容易忽略细节,比如输入校验和异常处理。
以上就是在Java中如何开发小型图书管理系统的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号