往一个HashMap集合中添加若干元素.获取Map中的所有key, 并使用迭代器遍历输出每个key。 获取上述Map集合的所有value, 并使用增强for和JDK 1.8开始之后的Lambda表达式输出每个value。 定义Map集合,其中键为图书的类型,自定义类型图书类Book的List集合作为值,添加元素。再获取该Map的值,将每本图书信息进行输出。
时间: 2024-04-15 07:31:21 浏览: 21
你好!对于你的问题,我将使用Java代码来解答。首先,我们创建一个HashMap集合并添加一些元素:
```java
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
public class Main {
public static void main(String[] args) {
// 创建HashMap集合
Map<String, String> map = new HashMap<>();
// 添加元素
map.put("key1", "value1");
map.put("key2", "value2");
map.put("key3", "value3");
map.put("key4", "value4");
map.put("key5", "value5");
// 使用迭代器遍历输出每个key
Iterator<String> iterator = map.keySet().iterator();
while (iterator.hasNext()) {
String key = iterator.next();
System.out.println(key);
}
// 使用增强for输出每个value
for (String value : map.values()) {
System.out.println(value);
}
// 定义Map集合,键为图书的类型,值为自定义类型图书类Book的List集合
Map<String, List<Book>> bookMap = new HashMap<>();
// 添加图书信息
List<Book> novelBooks = new ArrayList<>();
novelBooks.add(new Book("Book 1", "Novel"));
novelBooks.add(new Book("Book 2", "Novel"));
List<Book> scienceBooks = new ArrayList<>();
scienceBooks.add(new Book("Book 3", "Science"));
scienceBooks.add(new Book("Book 4", "Science"));
bookMap.put("Novel", novelBooks);
bookMap.put("Science", scienceBooks);
// 输出图书信息
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("Title: " + book.getTitle() + ", Type: " + book.getType());
}
}
}
}
class Book {
private String title;
private String type;
public Book(String title, String type) {
this.title = title;
this.type = type;
}
public String getTitle() {
return title;
}
public String getType() {
return type;
}
}
```
希望这个例子能够帮助到你!如果你还有其他问题,请随时提问。