六、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<K, List<V>> mSource = new LinkedHashMap<K, List<V>>();

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<String, Object> getMultiValueMap(TreeMap<?, ?> treeMap) {
        MultiValueMap<String,Object> 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;
    }

}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM