六、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