某图书馆里有很多藏书,需要设计一个系统,能够实现添加、删除、修改和查询图书的功能,请使用集合实现这个简单的图书管理系统。
时间: 2024-03-22 13:42:51 浏览: 180
好的,这个系统比较简单,我们可以使用 Java 中的集合来实现。我可以给你提供一个基本的实现思路:
1. 定义一个 Book 类,包含书名、作者、价格等属性;
2. 使用 ArrayList 集合存储 Book 对象,实现添加、删除、修改和查询图书的功能;
3. 添加图书:创建一个 Book 对象,将其添加到 ArrayList 集合中;
4. 删除图书:根据书名或者其他属性查找对应的 Book 对象,然后从 ArrayList 中删除;
5. 修改图书:根据书名或者其他属性查找对应的 Book 对象,然后修改其属性值;
6. 查询图书:根据书名或者其他属性查找对应的 Book 对象,然后输出其属性值。
下面是一个具体的实现代码,供你参考:
```java
import java.util.ArrayList;
import java.util.Scanner;
public class BookManagementSystem {
public static void main(String[] args) {
ArrayList<Book> books = new ArrayList<>();
Scanner scanner = new Scanner(System.in);
while (true) {
System.out.println("请输入操作序号:");
System.out.println("1.添加图书");
System.out.println("2.删除图书");
System.out.println("3.修改图书");
System.out.println("4.查询图书");
System.out.println("0.退出系统");
int choice = scanner.nextInt();
scanner.nextLine(); // 读取换行符
switch (choice) {
case 1:
System.out.println("请输入书名:");
String name = scanner.nextLine();
System.out.println("请输入作者:");
String author = scanner.nextLine();
System.out.println("请输入价格:");
double price = scanner.nextDouble();
scanner.nextLine(); // 读取换行符
Book book = new Book(name, author, price);
books.add(book);
System.out.println("添加成功!");
break;
case 2:
System.out.println("请输入要删除的书名:");
String deleteName = scanner.nextLine();
boolean isDeleted = false;
for (Book b : books) {
if (b.getName().equals(deleteName)) {
books.remove(b);
isDeleted = true;
break;
}
}
if (isDeleted) {
System.out.println("删除成功!");
} else {
System.out.println("没有找到该书!");
}
break;
case 3:
System.out.println("请输入要修改的书名:");
String modifyName = scanner.nextLine();
boolean isModified = false;
for (Book b : books) {
if (b.getName().equals(modifyName)) {
System.out.println("请输入新的书名:");
String newName = scanner.nextLine();
System.out.println("请输入新的作者:");
String newAuthor = scanner.nextLine();
System.out.println("请输入新的价格:");
double newPrice = scanner.nextDouble();
scanner.nextLine(); // 读取换行符
b.setName(newName);
b.setAuthor(newAuthor);
b.setPrice(newPrice);
isModified = true;
break;
}
}
if (isModified) {
System.out.println("修改成功!");
} else {
System.out.println("没有找到该书!");
}
break;
case 4:
System.out.println("请输入要查询的书名:");
String queryName = scanner.nextLine();
boolean isFound = false;
for (Book b : books) {
if (b.getName().equals(queryName)) {
System.out.println(b);
isFound = true;
break;
}
}
if (!isFound) {
System.out.println("没有找到该书!");
}
break;
case 0:
System.out.println("感谢使用!");
System.exit(0);
default:
System.out.println("输入有误,请重新输入!");
}
}
}
}
class Book {
private String name;
private String author;
private double price;
public Book(String name, String author, double price) {
this.name = name;
this.author = author;
this.price = price;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
@Override
public String toString() {
return "Book{" +
"name='" + name + '\'' +
", author='" + author + '\'' +
", price=" + price +
'}';
}
}
```
这个代码实现了一个简单的图书管理系统,可以实现添加、删除、修改和查询图书的功能。当然,这只是一个基本的实现,你可以根据需求进行二次开发和优化。
阅读全文