Java,如何将值添加到在HashMap中用作值的Array List中

ved*_*ran 20 java arraylist hashmap

我所拥有的是一个HashMap<String, ArrayList<String>>叫做的examList.我想用它来保存一个人参加的每门课程的成绩.所以关键HashMap在于couresID,ArrayList这个人所做的所有等级(考试尝试)都是有价值的.

问题是我知道如何正常使用数组列表和哈希映射,但我不知道如何开始这个例子.那么我怎么样,或者例如,在ArrayList里面添加一些东西HashMap

dun*_*nni 37

您可以使用Google Guava库,它具有Multi-Value-Maps的实现(Apache Commons Collections也有实现,但没有泛型).

但是,如果您不想使用外部库,那么您将执行以下操作:

if (map.get(id) == null) { //gets the value for an id)
    map.put(id, new ArrayList<String>()); //no ArrayList assigned, create new ArrayList

map.get(id).add(value); //adds value to list.
Run Code Online (Sandbox Code Playgroud)


Mec*_*kov 7

String courseID = "Comp-101";
List<String> scores = new ArrayList<String> ();
scores.add("100");
scores.add("90");
scores.add("80");
scores.add("97");

Map<String, ArrayList<String>> myMap = new HashMap<String, ArrayList<String>>();
myMap.put(courseID, scores);
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助!