六、Java中一个key存多个value的MultiValueMap,一键多值

一、MultiValueMap介绍,与map,HashMap相差不多

添加一个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);
复制代码
二、MultiValueMap接口的实现类LinkedMultiValueMap

Map mSource = new LinkedHashMap();

import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;

import java.util.Iterator;
import java.util.Map;
import java.util.TreeMap;

public class TreeMap2MultiValueMap {

public MultiValueMap getMultiValueMap(TreeMap treeMap) {
    MultiValueMap map = new LinkedMultiValueMap<>();
    Iterator iter = treeMap.entrySet().iterator();
    while (iter.hasNext()){
        Map.Entry entry = (Map.Entry) iter.next();
        map.add(entry.getKey().toString(), null == entry.getValue() ? "null" : entry.getValue().toString());
    }
    return map;
}

}

你可能感兴趣的:(java)