参见英文答案 >
Map implementation with duplicate keys17个
我正在创建一个需要存储键值对的程序.程序需要以键的形式接受请求,并返回相应的值.
我正在创建一个需要存储键值对的程序.程序需要以键的形式接受请求,并返回相应的值.
问题是每个键有时会有多个值,而map类不允许重复键.
值是数字,所以我无法像字符串那样有意义地连接值.
解决方法
$cat YourMap.java public class YourMap extends HashMap<String,List<Integer>> { public void put(String key,Integer number) { List<Integer> current = get(key); if (current == null) { current = new ArrayList<Integer>(); super.put(key,current); } current.add(number); } public static void main(String args[]) { YourMap m = new YourMap(); m.put("a",1); m.put("a",2); m.put("b",3); for(Map.Entry e : m.entrySet()) { System.out.println(e.getKey() + " -> " + e.getValue()); } } } $java map b -> [3] a -> [1,2]