存储列表的值

时间:2013-01-04 09:14:33

标签: java

我有一个Map,但我希望map的值是ArrayList

类型
Map m = new HashMap();

因为Key'A'的值本身会有多个值,例如。键'A'的值为10,20,30请告知如何实现这一点,我已经创建了下面的第一步

LinkedHashMap<String,List<String>> A = new LinkedHashMap<String,List<String>>();

请告知如何在列表中添加多个值并将其与Map in put操作一起存储

5 个答案:

答案 0 :(得分:0)

如果我正确理解了这个问题,那么这对我来说似乎是正确的方法,你需要做的就是:

List<String> strings = new ArrayList<String>();
strings.add("10");
strings.add("20");
strings.add("30");

A.put(strings);

或者你可以:

A.put(Arrays.asList("10", "20", "30"));

答案 1 :(得分:0)

喜欢这个 -

LinkedHashMap<String,List<String>> A = new LinkedHashMap<String,List<String>>();
List<String> list = new ArrayList<String>();
list.add("10");
list.add("20");
list.add("30");
A.put("a", list);

答案 2 :(得分:0)

喜欢:

List<String> list = new ArrayList<>();
list.add("abc");
list.add("xyz");
// ....

Map<String,List<String>> map = new HashMap<>();
map.put("Key", list);

答案 3 :(得分:0)

据我所知,您可以使用Apache MultiValueMap。它符合您的要求.http://commons.apache.org/collections/apidocs/org/apache/commons/collections/map/MultiValueMap.html

答案 4 :(得分:0)

这是一个程序。

import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;


public class Test {

    public static void main(String[] args) {
        LinkedHashMap<String,List<String>> A = new LinkedHashMap<String,List<String>>();
        List<String> list = new ArrayList<>();
        list.add("1");
        A.put("1", list);

        //add new values
        list = A.get("1");
        if(list!=null){
            list.add("2");
        }else{
            list = new ArrayList<String>();
            list.add("2");
        }
        A.put("1", list);

    }

}