改为适合的自定义类之后完整的代码呢
时间: 2023-08-22 22:07:11 浏览: 48
好的,下面是一个使用自定义类的例子。 假设您的自定义类名为 `Person`,具有 `name` 和 `age` 两个属性,那么您可以按照以下方式声明和使用 `MultiValueMap`:
```java
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;
public class Main {
public static void main(String[] args) {
MultiValueMap<String, Person> map = new LinkedMultiValueMap<>();
Person person1 = new Person("Alice", 25);
Person person2 = new Person("Bob", 30);
Person person3 = new Person("Charlie", 35);
// 添加值到 map 中
map.add("group1", person1);
map.add("group1", person2);
map.add("group2", person3);
// 获取特定键的值
System.out.println("Values for group1: " + map.get("group1"));
// 获取所有键值对
for (String key : map.keySet()) {
System.out.println("Values for " + key + ": " + map.get(key));
}
}
}
class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
@Override
public String toString() {
return name + " (age " + age + ")";
}
}
```
在上面的示例中,我们首先导入了 `org.springframework.util.LinkedMultiValueMap` 和 `org.springframework.util.MultiValueMap` 类,然后声明了一个 `MultiValueMap` 对象 `map`,键的类型是 `String`,值的类型是 `Person`。
接下来,我们创建了三个 `Person` 对象,并将它们添加到 `map` 中。我们使用 `add()` 方法来添加值,这个方法可以添加多个值到同一个键中。
最后,我们演示了如何获取特定键的值以及如何遍历所有键值对。注意,在输出 `map` 的值时,`Person` 类的 `toString()` 方法被自动调用,以便将对象转换为字符串。
阅读全文