Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Java HashMap duplicate elements

Tags:

java

map

I want to add duplicate elements on hashmap

so:

put("name1", 1);
put("name1", 3);
put("name1", 3);
put("name2", 1);
put("name2", 3);

how i can do that?

like image 615
lacas Avatar asked Jan 29 '11 17:01

lacas


1 Answers

Use a Map<String, List<Integer>> i.e. you map a string to a list of integers.

So, in this case, name1 would map to a list of [1,3,3].

Obviously you'd have to write your own put method, in which you add the int to the list. Example:

put(String s, int i){
    List<Integer> list = map.get(s);
    if(list == null){
        list = new ArrayList<Integer>();
        map.put(s, list);
    }
    list.add(i);
}
like image 144
dogbane Avatar answered Sep 27 '22 19:09

dogbane