定义Map集合,其中键为图书的类型,自定义类型图书类Book的List集合作为值,添加元素。再获取该Map的值,将每本图书信息进行输出
时间: 2024-04-15 14:31:35 浏览: 75
可以定义一个键为图书类型,值为自定义类型 `Book` 的列表的 `Map` 集合,并添加元素。然后获取该 `Map` 的值,并输出每本图书的信息。以下是示例代码:
```java
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class Main {
public static void main(String[] args) {
// 定义一个 Map 集合,键为图书类型,值为 Book 类的列表
Map<String, List<Book>> bookMap = new HashMap<>();
// 创建 Book 对象
Book book1 = new Book("Java Programming", "John Doe");
Book book2 = new Book("Python Basics", "Jane Smith");
Book book3 = new Book("C++ Fundamentals", "Mike Johnson");
// 向 Map 集合中添加元素
List<Book> programmingBooks = new ArrayList<>();
programmingBooks.add(book1);
bookMap.put("Programming", programmingBooks);
List<Book> pythonBooks = new ArrayList<>();
pythonBooks.add(book2);
bookMap.put("Python", pythonBooks);
List<Book> cppBooks = new ArrayList<>();
cppBooks.add(book3);
bookMap.put("C++", cppBooks);
// 获取 Map 的值并输出每本图书的信息
for (List<Book> books : bookMap.values()) {
for (Book book : books) {
System.out.println(book.getTitle() + " - " + book.getAuthor());
}
}
}
}
// 自定义图书类 Book
class Book {
private String title;
private String author;
public Book(String title, String author) {
this.title = title;
this.author = author;
}
public String getTitle() {
return title;
}
public String getAuthor() {
return author;
}
}
```
这个代码会输出:
```
Java Programming - John Doe
Python Basics - Jane Smith
C++ Fundamentals - Mike Johnson
```
这些是每本图书的信息。你可以根据自己的需求修改图书的属性和元素的添加。
阅读全文