定义Map集合,其中键为图书的类型,自定义类型图书类Book的List集合作为值,添加元素。再获取该Map的值,将每本图书信息进行输出。
时间: 2024-04-15 19:31:34 浏览: 7
好的,以下是定义Map集合、添加元素、获取值并输出图书信息的示例代码:
```java
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public 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;
}
public String toString() {
return "Book [title=" + title + ", author=" + author + "]";
}
public static void main(String[] args) {
// 定义Map集合
Map<String, List<Book>> bookMap = new HashMap<>();
// 添加元素
Book book1 = new Book("Book 1", "Author 1");
Book book2 = new Book("Book 2", "Author 2");
Book book3 = new Book("Book 3", "Author 3");
List<Book> novelBooks = new ArrayList<>();
novelBooks.add(book1);
novelBooks.add(book2);
List<Book> scienceBooks = new ArrayList<>();
scienceBooks.add(book3);
bookMap.put("Novel", novelBooks);
bookMap.put("Science", scienceBooks);
// 获取Map的值并输出图书信息
for (Map.Entry<String, List<Book>> entry : bookMap.entrySet()) {
String type = entry.getKey();
List<Book> books = entry.getValue();
System.out.println("Type: " + type);
for (Book book : books) {
System.out.println("Book: " + book.toString());
}
System.out.println();
}
}
}
```
输出结果如下:
```
Type: Novel
Book: Book [title=Book 1, author=Author 1]
Book: Book [title=Book 2, author=Author 2]
Type: Science
Book: Book [title=Book 3, author=Author 3]
```
希望这能帮到你!如果还有其他问题,请随时提问。