Spring 的内部实现是 LinkedMultiValueMap ,即一个键对应多个值
- 添加一个Key对应一个Value的:void add(K, V)
- 添加一个Key对应多个Value的:void add(K, List)
- 设置一个Key对应一个Value的:void set(K, V)
- 设置一个Key对应多个Value的:void set(K, List)
- 移除一个Key和它对应的Value:List remove(K)
- 清除所有Value的:void clear()
- 拿到所有Key的集合:Set keySet()
- 拿到所有的值:List values()
- 拿到一个Key对应的某个值:V getValue(K, index)
- 拿到一个Key对应的所有Value:List getValues(K)
- 拿到MultiValueMap的大小:int size()
- 判断是否为空MultiValueMap:boolean isEmpty();
- 判断是否包含某个Key:boolean containKey(K);
- LinkedMultiValueMap linkedMultiValueMap = new LinkedMultiValueMap<>();
- linkedMultiValueMap.add("name", "t1");
- linkedMultiValueMap.add("name", "t2");
- linkedMultiValueMap.add("name", "t3");
for (Entry<String, List<String>> entry : linkedMultiValueMap.entrySet()) { System.out.println(entry.getKey() + entry.getValue()); // List<String> value = entry.getValue(); }
Ps:打印结果为 name[t1, t2, t3]