使用HashMap<Integer, Book>然后完成下面的功能: 1、放入5 种不同的Book对象,书籍编号作为key值 2、遍历显示书籍信息 3、使用 remove 移除几个对象 4、再次遍历显示书籍信息
时间: 2024-09-08 14:03:25 浏览: 107
首先,你需要定义一个Book类,该类需要有一个构造函数以及获取书籍信息的方法。然后,你可以使用HashMap来存储书籍编号和对应的Book对象。以下是具体的步骤和代码示例:
1. 定义Book类:
```java
public class Book {
private String title;
private String author;
private int id;
public Book(int id, String title, String author) {
this.id = id;
this.title = title;
this.author = author;
}
public String getTitle() {
return title;
}
public String getAuthor() {
return author;
}
public int getId() {
return id;
}
@Override
public String toString() {
return "Book{" +
"id=" + id +
", title='" + title + '\'' +
", author='" + author + '\'' +
'}';
}
}
```
2. 使用HashMap存储Book对象:
```java
import java.util.HashMap;
import java.util.Map;
public class BookManager {
public static void main(String[] args) {
// 创建HashMap实例
HashMap<Integer, Book> bookMap = new HashMap<>();
// 放入5种不同的Book对象
bookMap.put(1, new Book(1, "Java编程思想", "Bruce Eckel"));
bookMap.put(2, new Book(2, "C程序设计语言", "Brian W. Kernighan"));
bookMap.put(3, new Book(3, "设计模式:可复用面向对象软件的基础", "Erich Gamma"));
bookMap.put(4, new Book(4, "代码大全", "Steve McConnell"));
bookMap.put(5, new Book(5, "重构:改善既有代码的设计", "Martin Fowler"));
// 遍历显示书籍信息
for (Map.Entry<Integer, Book> entry : bookMap.entrySet()) {
System.out.println(entry.getValue());
}
// 使用remove移除几个对象
bookMap.remove(2);
bookMap.remove(4);
// 再次遍历显示书籍信息
for (Map.Entry<Integer, Book> entry : bookMap.entrySet()) {
System.out.println(entry.getValue());
}
}
}
```
这段代码完成了你的要求,首先创建了一个HashMap来存储Book对象,并使用书籍编号作为键值。然后,它添加了5本不同的书,遍历并打印了所有书籍的信息,接着移除了编号为2和4的书籍,最后再次遍历并打印剩余书籍的信息。
阅读全文