使用Java编写图书管理系统
时间: 2024-05-15 16:13:33 浏览: 89
好的,下面是一个简单的图书管理系统的Java代码示例:
```
import java.util.ArrayList;
import java.util.Scanner;
public class BookManagementSystem {
private ArrayList<Book> books;
public BookManagementSystem() {
books = new ArrayList<>();
}
// 添加图书
public void addBook(Book book) {
books.add(book);
}
// 删除图书
public void deleteBook(int index) {
books.remove(index);
}
// 查找图书
public Book findBook(String name) {
for (Book book : books) {
if (book.getName().equals(name)) {
return book;
}
}
return null;
}
// 显示所有图书
public void displayAllBooks() {
for (Book book : books) {
System.out.println(book.toString());
}
}
public static void main(String[] args) {
BookManagementSystem system = new BookManagementSystem();
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("5. 退出");
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);
system.addBook(book);
break;
case 2:
System.out.println("请输入要删除的图书编号:");
int index = scanner.nextInt();
scanner.nextLine(); // 处理换行符
system.deleteBook(index);
break;
case 3:
System.out.println("请输入要查找的图书名称:");
String searchName = scanner.nextLine();
Book result = system.findBook(searchName);
if (result == null) {
System.out.println("未找到该图书!");
} else {
System.out.println(result.toString());
}
break;
case 4:
system.displayAllBooks();
break;
case 5:
System.exit(0);
default:
System.out.println("无效的选择!");
break;
}
}
}
}
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 "书名:" + name + ",作者:" + author + ",价格:" + price;
}
}
```
这个示例中,我们定义了一个`BookManagementSystem`类来管理图书,每个图书都是`Book`对象。我们通过向`books`列表中添加、删除、查找、显示所有图书的方式来管理图书。
在`main`方法中,我们使用一个无限循环来不断接收用户的选择,然后根据选择进行相应的操作。用户可以选择添加图书、删除图书、查找图书、显示所有图书、退出程序等操作。当用户输入5时,程序会调用`System.exit(0)`方法来退出程序。
这只是一个简单的示例,实际的图书管理系统会更加复杂,需要考虑更多的功能和细节。
阅读全文