LinkedMultiValueMap 一个key可以对应多个value
`LinkedMultiValueMap`是Spring框架中的一个类,它继承自`AbstractMultiValueMap`。这个类主要用于存储具有多个值的映射关系,其中键是唯一的,但值可以有多个。
下面是一个使用`LinkedMultiValueMap`的例子:
```java
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;
public class LinkedMultiValueMapExample {
public static void main(String[] args) {
// 创建一个LinkedMultiValueMap实例
MultiValueMap<String, String> multiValueMap = new LinkedMultiValueMap<>();
// 向multiValueMap中添加键值对
multiValueMap.add("key1", "value1");
multiValueMap.add("key1", "value2");
multiValueMap.add("key2", "value3");
// 获取key1对应的所有值
List<String> valuesForKey1 = multiValueMap.get("key1");
System.out.println("Values for key1: " + valuesForKey1);
// 移除key1对应的一个值
multiValueMap.remove("key1", "value1");
System.out.println("Values for key1 after removing value1: " + multiValueMap.get("key1"));
// 判断是否包含某个键
boolean containsKey = multiValueMap.containsKey("key1");
System.out.println("Contains key1: " + containsKey);
// 判断是否包含某个键值对
boolean containsEntry = multiValueMap.containsEntry("key1", "value2");
System.out.println("Contains entry (key1, value2): " + containsEntry);
}
}
```
在这个例子中,我们首先创建了一个`LinkedMultiValueMap`实例,然后向其中添加了一些键值对。接着,我们演示了如何获取、移除键值对,以及如何检查是否包含某个键或键值对。